1、&&与&的区别
二者都能用于逻辑真判断。
&& 具有短路功能。if(str != null && !str.equals("a"))当str为null时,&&后面的不会执行,所以不会出现NullPointerException。如果是&,可能会抛空指针异常。
&可以是位运算符,当&两边的表达式不是boolean时,&表示按位与。
2、如何跳出多重嵌套循环
加标记
int arr[][] = {{9,2,6},{5,2,6},{1,2,4}};
boolean flag = false;
for(int i= 0;i<arr.length&& flag ; i++){
for(int j= 0;j<arr[j].length&& flag ; j++){
if(arr[i][j] == 5){
flag = true;
break;
}
}
}
3、
short s = 1; s = s+1;//1是int,结果是int,需要类型转换后赋给s
short h = 1; h += 1;//+= 运算符,编译器会特殊处理,不会报错.
4、 |