使用 Enum
类来比较某些内容有什么好处。缺点是什么:
public static final String TRUE = "true";
public static final String FALSE = "false";
public void method1(){
if(TRUE.equals(inputString)){
//do some logic
}
else if(FALSE.equals(inputString)){
//do some other logic
}
}
为什么在示例中建议使用Enum
而不是String
?
最佳答案
一个重要的原因是,使用enum
,您可以知道该值是TRUE
或FALSE
;不可能是其他任何东西。但是 String
可以有任何值,所以你必须检查它。这使得代码更简单、更容易理解。
另一个是你可以将 enum
元素与 ==
进行比较,但是你必须使用相对较慢的 equals()
调用来比较String
对象。
关于Java Enum 的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10256031/