1 增强型for循环
// 增强型for循环会自动把数组按下标拿出来,然后赋值给临时变量,这时可以在循环体中对变量进行操作。
// 增强型for循环中对变量的操作不会修改内存中数组的值,只是对临时的变量进行操作。
// 当增强型for循环结束时,临时变量的值也就消失了。 故增强型for循环通常用于遍历数组,而不用于改值操作。
for(临时变量的类型 临时变量名 : 数组名){
循环体;
}
int [] array = new int[]{19,20,36,98,33};
for(int a : array){
// 输出array数组中的值
System.out.println(a);
}
2 可变参数
2.1 定义 可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。
注意:可变参数必须位于最后一项。
2.2 特点 只能出现在参数列表的最后; ...位于变量类型和变量名之间,前后有无空格都可以; 调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
// 可变参数的格式:
// 数据类型 ... 变量名 可变参数必须位于最后一项。
static void printNumber(int...numbers){
for(int i = 0; i < numbers.length; i++){
// numbers是一个数组,所以输出时要加中括号,括号中写下标
System.out.print(numbers[i]+"\t");
}
}
3 自增自减运算符
只影响操作数本身 ++放在操作数的前面或者后面,都是自身+1 --放在操作数的前面或者后面,都是自身-1 影响其他值(赋值,输出,表达式计算) ++|--放在操作数的前面,先+1|-1,然后再去运算 ++|--放在操作数的后面,先参与运算,然后再自身+1|-1
4 赋值运算符
赋值运算符 基础赋值运算符 = =是java中唯一一个自右向左运算的符号
扩展赋值运算符 (算数运算符+基础赋值运算符) += a+=b ==> a = a+b; -= *= /= %= a%=b ==> a = a%b; 缺点: 不直观 优点: 提高执行效率,编译期会自动优化为扩展赋值运算符 自动做强制类型转换
5 位移运算符(了解)
把操作数转为二进制,对二进制的操作数进行某种规则的运算,最终得到的二进制的结果再转为十进制
操作数为整数,作为位运算符 & : 两边的操作数转为二进制,同一位置的两个数,一个为0就是0,两个都为1才1,结果转为十进制 | : 两边的操作数转为二进制,同一位置的两个数, 一个为1就是1,两个都为0才是0,结果转为十进制 ^ : 两边的操作数转为二进制,同一位置的两个数, 相同为0,不同为1,结果转为十进制