java - equalsIgnoreCase() 方法内有多个参数

标签 java if-statement equals

我想在使用 equals 方法时清理我的代码。我想知道是否有什么方法可以在 equals() 方法中一次添加更多参数。

目前,它看起来像这样:

if (myString.equalsIgnoreCase("option1") || 
    myString.equalsIgnoreCase("option2") || 
    myString.equalsIgnoreCase("option3"))
        doSomething();

虽然我想要这样:

if (myString.equalsIgnoreCase("option1", "option2", "option3"))
       doSomething();

有什么我可以做的吗?比如重写 equals() 方法或类似的方法?

最佳答案

您可以使用Stream.anyMatch() :

if (Stream.of("option1", "option2", "option3").anyMatch(myString::equalsIgnoreCase))

关于java - equalsIgnoreCase() 方法内有多个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50689259/

相关文章:

java - Spring Security,访问 ="ROLE_ADMIN"与访问 ="hasAnyRole(' ROLE_ADMIN')

java - 如何检查字符串是否以多个前缀之一开头?

javascript - 开始输入时出现提醒

Hibernate:什么时候需要实现 equals() 和 hashCode(),如果需要,如何实现?

java - 从 equals() 调用 hashCode()

java - 错误: java. lang.OutOfMemoryError:无法在循环中创建新的 native 线程

java - Maven:缺少 Artifact org.springframework:spring:jar:4.2.6

java - 通过 JMX 判断 Java 版本

c# - "if"不能完美工作

java - 比较 Java 中的字符串 .equals()