Java 如何在if语句中包含多个条件?

Java 如何在if语句中包含多个条件?,java,if-statement,compiler-errors,Java,If Statement,Compiler Errors,我希望在if语句中包含多个选项,例如if(Option1.equalsIgnoreCase(“x”&&“y”)。但是当我真的尝试写上面提到的代码时,它不会起作用。我的目标是使if语句在满足2个或3个标准中的一个时起作用 如果您想在选项1为“x”或“y”时执行某项操作,请使用以下命令: if (Option1.equalsIgnoreCase("x") || Option1.equalsIgnoreCase("y")) { //do stuff } ||表示或,而&&表示和。如果要使用&

我希望在if语句中包含多个选项,例如
if(Option1.equalsIgnoreCase(“x”&&“y”)
。但是当我真的尝试写上面提到的代码时,它不会起作用。我的目标是使
if
语句在满足2个或3个标准中的一个时起作用

如果您想在选项1为“x”或“y”时执行某项操作,请使用以下命令:

if (Option1.equalsIgnoreCase("x") || Option1.equalsIgnoreCase("y")) {
    //do stuff
}

||表示或,而&&表示和。如果要使用&&Option1,则必须同时为x和y,这是不可能的。

必须将支票拆分为不同的支票,不能仅在一个支票中组合

如果optional1同时等于
X
Y
(它不能这样做),下面的逻辑AND示例代码将返回true。注:我使用了
&&
运算符,称为运算符:-

if(Option1.equalsIgnoreCase("x") && Option1.equalsIgnoreCase("y")){
 // do something
}
逻辑OR的示例。如果选项1等于
X
Y
,则下面的代码将返回true。注:我使用了
|
,称为运算符

if(Option1.equalsIgnoreCase("x") || Option1.equalsIgnoreCase("y")){
     // do something
    }
OR和逻辑and运算符的组合。(如果optional1等于X或Y,Optional2等于Z,则返回true。)


。这样可以组合多个条件。

不幸的是,Java没有这样的条件

您必须在if声明中将支票分为两个条款,如:

if ("x".equalsIgnoreCase(Option1) || "y".equalsIgnoreCase(Option2) {
   ....
}
注意到我使用了
|
(或或)而不是
&&
(和),就像我们使用
&&
,它永远不会是真的(字符串永远不能同时是“x”和“y”)


更多信息请参见。

您可以使用正则表达式

option1.matches("[xXyY]")

这表示字符串是x还是y

Option1.equalsIgnoreCase(“x”)和&Option1.equalsIgnoreCase(“y”)
使用| | |或“运算符而不是&&”和“通过这种方式,它将看到是否有任何选项是真的,而不是它们都必须是真的。我认为您正在寻找
Regex
。它不会为您编译。准确点,谢谢!!你帮了大忙!别忘了接受或投票回答,@TheChosenSnailWhy‘不幸’?因为我们不能这样做:)
option1.matches("[xXyY]")