【发布时间】:2018-03-23 12:58:01
【问题描述】:
我想知道如何在一个相等条件中添加多个条件。例如这里如何为 x 指定多个等式。(x == (1 || 2 || 3))。这是我尝试过但不起作用的方法。
【问题讨论】:
-
使用
if(x == 1 || x == 2 || x == 3)。这也是一个你可以简单地用谷歌搜索而不适合 StackOverflow 的问题。
标签: java
我想知道如何在一个相等条件中添加多个条件。例如这里如何为 x 指定多个等式。(x == (1 || 2 || 3))。这是我尝试过但不起作用的方法。
【问题讨论】:
if(x == 1 || x == 2 || x == 3)。这也是一个你可以简单地用谷歌搜索而不适合 StackOverflow 的问题。
标签: java
您可以使用if(x == 1 || x == 2 || x == 3) 或使用switch:
switch(x) {
case 1:
case 2:
case 3:
// do something
break;
default: // it's not 1, 2 nor 3
// do other things
}
【讨论】:
if (Set.of(1, 2, 3).contains(x)) { // Java 9
if (Arrays.asList(1, 2, 3).contains(x)) { // <= Java 8
这似乎是x is in the set {1, 2, 3} 的合适模式。
【讨论】:
x == (1 || 2 || 3) 有点像x in {1, 2, 3} (是的元素)。在 java 中,我经常看到丑陋的 Arrays.asList 被用于此目的。
如果按照你想要的方向,你有两种方法:
1. if(x == 1 || x == 2 || x == 3) { ... }
2. if(x.equals(1) || x.equals(2) || x.equals(3)) { ... } // better
例如,您可以阅读有关Java here 的更多信息。
【讨论】: