Java_类型转换、常用运算符
Java_类型转换、常用运算符
类型转换
自动类型转换
- 类型范围小的变量,可以直接赋值给类型范围大的变量。
表达式的自动类型转换
- 在表达式中,小范围类型的变量会自动转换成当前较大范围的类型再运算。
- 注意事项:
- 表达式的最终结果类型由表达式中的最高类型决定。
- 在表达式中,byte、short、char 是直接转换成int类型参与运算的。
强制类型转换
- 类型范围大的数据或者变量,不能直接赋值给类型范围小的变量,会报错。
- 可以强行将类型范围大的变量、数据赋值给类型范围小的变量。
- 注意事项
- 强制类型转换可能造成数据(丢失)溢出;
- 浮点型强转成整型,直接丢掉小数部分,保留整数部分返回。
运算符
“+”号做连接符:
- “+”符号与字符串运算的时候是用作连接符的,其结果依然是一个字符串。
int a = 5; System.out.println("abc" + 'a'); // abca System.out.println("abc" + a); // abc5 System.out.println(5 + a); // 10 System.out.println("abc" + 5 + 'a'); //abc5a System.out.println(15 + "abc" + 15); //15abc15 System.out.println(a + 'a'); //102 System.out.println(a + "" + 'a'); //5a System.out.println(a + 'a' + " itheima "); //102 itheima System.out.println("itheima" + a + 'a'); //itheima5a System.out.println("itheima" + (a + 'a')); //itheima102
逻辑运算符
逻辑与“&” :有一个为false、结果是false
短路与&&: 一个为false、结果是false。前一个为false,后一个条件不执行了
逻辑或“|”:有一个为true、结果是true
短路或||:一个为true、结果是true。前一个为true,后一个条件不执行了
逻辑非“!”:!false=true、 !true=false
逻辑异或“^” :相同是false、不同是true。
注意:实际开发中、常用的逻辑运算符还是:&& 、 || 、 !
运算符优先级
优先级 运算符 结合性 1 ();[];{} 从左向右 2 !;+;-;~;++;-- 从右向左 3 *;/;% 从左向右 4 +;- 从左向右 5 <<;>>;>>> 从左向右 6 <;<=;>;>=;instanceof 从左向右 7 ==;!= 从左向右 8 & 从左向右 9 ^ 从左向右 10 | 从左向右 11 && 从左向右 12 || 从左向右 13 bool ? true : false 从右向左 14 =;+=;-=;*=;/=;&=;|=;^=;~=;<<=;>>=;>>>= 从右向左





浙公网安备 33010602011771号