条件判断中,字节比较的问题。
public static void main(String[] args) {
byte v1 = (byte) 0x80;
if (v1 == 0x80) {
System.out.println("== 0x80");
} else {
System.out.println("== (byte)0x80");
}
byte v2 = (byte) 0x7F;
if (v2 == 0x7F) {
System.out.println("== 0x7F");
} else {
System.out.println("== (byte)0x7F");
}
}
今天遇到了小问题,
为什么比较大于0x80的字节的时候,条件判断要写成“if (v1 == (byte)0x80) {”
而不是“if (v1 == 0x80) {”呢?
而小于0x80的就可以呢?
哪位给相信解释一下。