我有 JDK7 并且可以在我的开发机器上使用带字符串的开关。
我的问题是,该应用程序是否会在某些用户的系统上崩溃?换句话说,随意使用它们安全吗?
我知道我可能会将 JDK 与 VM 混淆,但请原谅我的无知。
最佳答案
是的,使用它们是安全的。
String
上的 switch
是通过更改编译器以在不使用新指令的情况下实现必要的字节码转换而引入 Java 的。也就是说,更改只是编译器的一个。
如果在 Android 中实现类似,则没有技术限制阻止在 SDK 19 下编译的 APK,它支持 switch
on String
在运行之前的设备上使用到版本 19。
的确,我很确定我自己使用了这个属性。您需要做的就是确保 targetSDKversion
和 maxSDKversion
为 >= 19
。由于我上面讨论的属性,minSDKversion
可以更低。
它的 Java 实现在 Project Coin 下,并在 Oracle 网站上有详细介绍。 https://blogs.oracle.com/darcy/entry/project_coin_string_switch_anatomy
关于java - 将 Switch 语句与字符串一起使用是否安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24565031/