当前位置: 首页 > 面试题库 >

为什么我的Java if语句不起作用并出现以下错误:“二进制运算符'&&'的错误操作数类型”?

谢宸
2023-03-14
问题内容

我有这个代码:

int i;
for (i = 0; i < 13; ++i) {
    if (hand[i].charAt(0) == 'A' || 'B' && hand[i].charAt(1) == 'C') 
        System.out.println(hand[i]);
        }

基本上,我要执行的操作是,如果每个数组元素中索引0处的字符是A或B,并且每个数组元素中第二个索引处的字符是C,我希望将这些元素打印出来。它可以使用一个字符,但是当我将or放在第一部分时,它给了我这个错误:“二进制运算符’&&’的错误操作数类型”。我该如何解决这个问题?

谢谢。


问题答案:

你不能写

hand[i].charAt(0) == 'A' || 'B'

也许你打算写

hand[i].charAt(0) == 'A' || hand[i].charAt(0) == 'B'

顺便说一句你可以写

"AB".indexOf(hand[i].charAt(0)) >= 0

这样,您可以根据需要添加更多字母。

但是,编写整个内容的最清晰方法可能是

if (hand[i].startsWith("AC") || hand[i].startsWith("BC"))


 类似资料: