java - 在 Java 中用字符串切换大小写 - 垃圾?

标签 java string switch-statement java-7

Java 在 Java7 中引入了带有字符串的 switch case。我想知道使用这样的开关盒是否会产生垃圾。

例如在我的程序中,

String s = getString();
switch(s) 
{
    case ABC: // ABC is a final static constant
    ...
    case CDE: // CDE is also final static constant.
    ...
}

java 如何执行这个 switch case。假设有 10 个这样的开关盒。每次将 string scase ABC 等匹配时,它会创建一个新字符串吗?

如果是这样的话,那就太垃圾了,所以当我给 switch case 提供 100 个 case 时,那么每次都会创建 100 个字符串。

最佳答案

如果 case 值是常量,则相同的规则适用于类常量池,就好像它根本不在 case 语句中一样。

这是一个good answer to a similar question这可能对你有帮助。

关于java - 在 Java 中用字符串切换大小写 - 垃圾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15552682/

相关文章:

javascript - 如何将变量放入cookie中?

javascript - 根据具有特定长度的现有字符串获取新字符串

Javascript switch 语句显示来自 2 个下拉菜单的数据

java - switch 语句中用于案例选择的常量映射?

java - Selenium 网络驱动程序(Eclipse): importing issues using ctrl +shift +O

java - 使用 Hibernate 中的 MySql PASSWORD() 函数

c# - 识别占位符的正则表达式

php - 不间断的 switch 语句

java - 无法解析方法 setGroup

java - 项目中所需库 tomcat-embed-websocket 的存档无法读取或不是有效的 ZIP 文件