算术运算符:+-*/ %
关系运算符:结果是boolean类型值;< <= > >= == !=
逻辑操作符:结果是boolean类型值;
& 与(同时为真,返回true)
| 或者(只要有一个是true,就返回true)
! 非(取反,false是true,这是单目运算符)
^ 不同或者(只要两边算子不同,返回true)
&& 短路与(返回结果与)&一样,只是&&当第一个算子能够判断结果时,第二个算子不在运行计算中)
|| 短路或(返回结果与|相同,但||当第一个算子能够判断结果时,第二个算子不在运行计算中)
短路与短路或:更常用、更智能、更快
赋值运算符:首先执行等号右侧的表达式,将执行结果赋值左侧的比变量
基本赋值运算符
=
扩展的赋值运算符
+= 追加/累加;byte i=5; i+=5;相当于byte i=5;i=(byte)(i+5);
-= 类似于同上逻辑
*= 类似于同上逻辑
/= 类似于同上逻辑
%= 类似于同上逻辑
byte b =10;
b=b+5;///编译报错,编译器只检查语法,不操作程序。编译器发现b+5的类型是int类型,b变量的类型是byte类型。大容量转换为小容量需要强制转换符
纠正
b=(byte)(b+5);
b+=5;
连接运算符的字符串
1、java中的+有两个功能
加法运算,求和
连接字符串的操作
2、当“+”运算符两侧的数据都是数字时,必须进行加法运算
3、当“+”运算符两侧只有一个数据是字符串时,必须进行字符串连接运算,连接运算后的结果仍然是字符串类型
4、多个“+”可以出现在一个表达式中,在不添加小括号的情况下,按照自左到右的顺序依次操作
a=10; b=20; System.out.println(10+20);//数字30 System.out.println(10+20+30);//数字60 System.out.println(10+20+30);//字符串“3030” System.out.println(10+(20+30);//字符串“102030” ///动态输出显示字符串:“10+20=30” System.out.println("10+20="+a+b);//10+20=1020 System.out.println("10+20="+(a+b));//“10+20=30” System.out.println(a"+20="+(a+b));//“10+20=30” System.out.println(a+"+"+b+"="+(a+b));//“10+20=30”,最终结果 String是引用数据类型,s是变量名,“abc“String类型的字面值 String s ="abc"; String username ="zhangsan";
三目运算符/三元运算符/条件运算符
1、语法规则
布尔表达式?表达式1:表达式2
2、三元运算符的执行原理?
当布尔表达式的结果是true时,选择表达式1座位的整个表达式执行结果
当布尔表达式结果为false时,选择表达式2作为整个表达式的执行结果
boolean sex=false;
char q=sex ? '男' : '女';
System.out.println(q);
char q2=sex ? "男" : '女';///编译报错,语法不兼容,可能是char类型,也可能是String 类型,但只赋值char类型变量,因此编译报错;
System.out.println(q2);
System.out.println(10);//10
System.out.println("1");//1
System.out.println('2');//2
System.out.println(char q2=sex ? "男" : '女');//女性,任何类型的内容都可以放在println中,因此可以执行;
本文是转载内容,我们尊重原作者对文章的权利。如有内容错误或侵权行为,请联系我们更正或删除文章。