我有这段代码
if(!(lotNo.charAt(0) >= "0" && (lotNo.charAt(0) <= "7"))) {
// if the first character is not within these boundaries
return false;
}
return true;
这种方法让我误以为bad operator type
?虽然它应该检查字符串中的第一个字符是否介于0和7之间。我是否在右边的行?
答案 0 :(得分:2)
Char
必须在'0'
而不是"0"
之内。第二个是String
答案 1 :(得分:1)
您正在与字符串而不是字符进行比较。尝试:
if (!(lotNo.charAt(0) >= '0' && (lotNo.charAt(0) <= '7'))) { // if the first character is not within these boundaries
return false;
}
return true;
"0"
&lt; - 带有一个字符的字符串,'0'
'0'
&lt; - char,字符'0'
答案 2 :(得分:0)
charAt(int index)方法返回值类型为char。
但是你将它与一个字符串进行比较,这就是你得到bad operator type