空白("")作为常数v / s直接使用空白("")

时间:2015-02-13 07:23:12

标签: java string

我在我的java代码中的许多地方使用blank value("")

我想知道定义blank("") in constant和使用该常量和directly using blank("")是一回事还是有所不同?

感谢。

2 个答案:

答案 0 :(得分:4)

String literal ""将添加到String常量池中。所以直接使用它 就像这样 - &gt; ""因为它更具可读性。不要定义名为BLANK_VALUE = ""的静态常量,然后使用它。就性能而言,将重复使用字符串文字的相同实例,因此无关紧要(声明静态字段的开销非常小*但是没关系)< / p>

查看哪些代码更有意义:

if("".equals(myString)){ // clear and easy to understand.
//do something
}

OR

if(MyClass.BLANK_VALUE.equals(myString)){ // you will have to go back to BLANK_VALUE to check it's actual value.
//do something 
}

PS:在LHS上使用常量将阻止NPE

答案 1 :(得分:1)

为什么不尝试使用isEmpty()方法

if(myString !=null && myString.isEmpty() ){}