【问题标题】:Is it safe to use Switch statements with strings使用带有字符串的 Switch 语句是否安全
【发布时间】:2014-07-04 00:11:45
【问题描述】:

我的开发机器上有 JDK7 和带字符串的开关。

我的问题是,该应用会在某些用户的系统上崩溃吗?换句话说,随意使用它们是否安全?

我知道我可能会将 JDK 与 VM 混淆,但请原谅我的无知。

【问题讨论】:

  • 由于Android使用Java 1.6,这将是一个问题。
  • @GabeSechan 这取决于 Android 的版本。更新的 API 允许 Java 1.7。事实上,Java 1.7 的一些新特性在旧版本的 Android 上也可以使用,只要支持编译后的字节码即可。
  • 怎么会不安全?!!!!!!

标签: java android string switch-statement


【解决方案1】:

是的,使用它们是安全的。

String 上的switch 通过更改编译器以实现必要的字节码转换而不使用新指令被引入 Java。也就是说,更改只是一个编译器。

如果在 Android 中实现类似,则没有技术限制阻止在 SDK 19 下编译的 APK,支持在 19 版之前运行的设备上使用 String 上的 switch

确实,我很确定我自己使用了这个属性。您需要做的就是确保targetSDKversionmaxSDKversion>= 19。由于我上面讨论的属性,minSDKversion 可以更低。

此项目的 Java 实现在 Project Coin 下,并在 Oracle 网站上进行了详细介绍。 https://blogs.oracle.com/darcy/entry/project_coin_string_switch_anatomy

另请参阅此答案:Android coding with switch (String)

另请参阅developer docs for Gradle plugin

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    • 1970-01-01
    • 1970-01-01
    • 2020-12-06
    • 2023-03-16
    相关资源
    最近更新 更多