Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA在IF语句中计算多个OR条件_Java_If Statement - Fatal编程技术网

JAVA在IF语句中计算多个OR条件

JAVA在IF语句中计算多个OR条件,java,if-statement,Java,If Statement,如何正确编写此语句?有更好的办法吗 byte[] buf = rtm.getMessageData(); if (buf[0] == 'A'|| 'B' || 'C' || 'D' || 'E' || 'F') 在正确的Java中,与您的代码完全相似的是: if (buf[0] == 'A'|| buf[0] == 'B' || buf[0] == 'C' || buf[0] == 'D' || buf[0] == 'E' || buf[0] == 'F') 但正如你所猜测的

如何正确编写此语句?有更好的办法吗

byte[] buf = rtm.getMessageData();
if (buf[0] == 'A'|| 'B' || 'C' || 'D' || 'E' || 'F')

在正确的Java中,与您的代码完全相似的是:

if (buf[0] == 'A'|| buf[0] == 'B' || buf[0] == 'C'
        || buf[0] == 'D' || buf[0] == 'E' || buf[0] == 'F')
但正如你所猜测的,有更好的方法

一种选择:

if (buf[0] >= 'A' && buf[0] <= 'F') {
    ...
} else {
    ...
}
if(buf[0]>='A'&&buf[0]
switch (buf[0]) {
    case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
        ...
        break;
    default:
        ...
}
if (buf[0] >= 'A' && buf[0] <= 'F')
    ....