- final
final 修饰一个变量,有很多种说法,比如不能改变等等 ;
准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会;
在idea中测试只能在定义时初始化。
final修饰的参数无法在方法内再次改变。 - 长短与
长路与&两侧都会被运算;
短路与&&只要第一个是false,第二个就不进行运算了。
长路或 | 两侧都会被运算;
短路 | 只要第一个是true的,第二个就不进行运算了。 - 异或^
不同,返回真
相同,返回假 - 位
#将int转换为二进制
Integer.toBinaryString()
-
三元操作符
表达式?值1:值2
如果表达式为真 返回值1
如果表达式为假 返回值2 -
if
if语句后面不要加分号 -
跳出循环
结束当前循环
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println(i+":"+j);
if(0==j%2)
break; //如果是双数,结束当前循环
}
结束外部循环
使用boolean结束外部循环
boolean breakout = false;
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println(i + ":" + j);
if (0 == j % 2) {
breakout = true; //终止外部循环的标记设置为true
break;
}
}
if (breakout) //判断是否终止外部循环
break;
}
使用标签结束外部循环
outloop: //outloop这个标示是可以自定义的比如outloop1,ol2,out5
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
System.out.println(i+":"+j);
if(0==j%2)
break outloop; //如果是双数,结束外部循环
}
}
- 增强型for循环
#a是数组,j是数组的每一个取值
#取数组最大值
for (int j : a){
if(j>k){
k=j;
}
}
- 数组操作
把一个数组的值,复制到另一个数组中
System.arraycopy(src, srcPos, dest, destPos, length)
src: 源数组
srcPos: 从源数组复制数据的起始位置
dest: 目标数组
destPos: 复制到目标数组的起始位置
length: 复制的长度
#数组复制
int[] b = Arrays.copyOfRange(a, 0, 3);
#转换为字符串
String content = Arrays.toString(a);
#排序
Arrays.sort(a);
#搜索
#使用binarySearch之前,必须先使用sort进行排序
Arrays.sort(a);
System.out.println(Arrays.toString(a));
System.out.println("数字 62出现的位置:"+Arrays.binarySearch(a, 62));
#判断相等
System.out.println(Arrays.equals(a, b));
#使用同一个值,填充整个数组
Arrays.fill(a, 5);
网友评论