java - 避免在 java if 条件中使用多个 OR 语句的更好方法

标签 java

是否有更好的方法来避免 if 条件中出现多个 OR 语句? 我的 ifOR 语句中包含超过 8 个字符串。

if(type.equalsIgnoreCase(anotherString1) ||   
   type.equalsIgnoreCase(anotherString2) ||   
   type.equalsIgnoreCase(anotherString3)){
    return true;
}

寻找更好的方法来编写带有多个 OR 语句的 if 或如何避免

最佳答案

很简单,您可以使用不同的值构建一个 Set 来测试小写(如果需要,使用 toLowerCase())。

然后,将您的语句更改为:

if (<set_name>.contains(type.toLowerCase())) 

有趣的是您还可以向代码中添加一些语义。您的集合将有一个名称,在功能上适合您的情况(allowedUserTypeselementTypesToProcess 或其他),并且可以设置在有用的地方以供重用(如果相关)。

关于java - 避免在 java if 条件中使用多个 OR 语句的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56533721/

相关文章:

java - 一个字符串包含多少字节?

java - java中公共(public)静态最终类标识符的命名规则是什么?

java - TimePicker 未定义 setText(String) 方法

ubuntu - 如何在 Ubuntu 中设置 Java 环境路径

java - Java 中对 IPC 的 RMI 支持

java - 如何在批处理文件中引用属性文件

java - 我使用 SImpleDateFormat 面临法语语言环境的 ParseException

java - 如何使用 Java 从具有多个 namespace 的 XML 中获取特定节点?

java - 整个JFrame中的JTextField而不是我确定的Area

java - 调用方法中的数组越界异常,如何从方法返回整个数组