Java中的运算符
算术运算符: +,-,*,/,%,++,--
赋值运算符 =
int a = 3;赋值运算符是把=右边的值赋值左边
扩展赋值运算符:+=,-=,*=,/=
关系运算符: >,<,>=,<=,==,!=
关系运算符返回的结果是布尔类型,只有true或false
逻辑运算符: &&,||,!
位运算符: &,|,^,~ , >>,<<,>>> (了解!!!)
条件运算符 ?:
//算数运算符
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
//取整除,或者叫取商
System.out.println(a/b);
//取余数,或者叫取模
System.out.println(a%b);
++:自增符,表示在自己原来的基础上+1
放在后面:先参加运算,后自加
放在前面:先自加,再参加运算
--:自减符,表示在自己原来的基础上-1
放在后面:先参加运算,后自减
放在前面:先自减,再参加运算
扩展运算符
逻辑运算符: &&,||,!
&&:短路与,如果前面的表达式是false,那么后面的表达式就不执行了,结果是false
||:短路或,如果前面的表达式是true,那么后面的表达式就不执行了,结果是true
&:位运算符,也可以用来做逻辑判断,如果用来做逻辑判断的话,
不管第一表达式返回是什么,所有的表达式都会执行一遍
<<:无符号左移,正数左移几位就乘2的几次方
>>:无符号右移,正数右移几位就除2的几次方
>>>:有符号右移
条件运算符:一般第一个条件是表达式,如果返回为true就取?后面的值,如果返回为false,就取:后面的值
基本数据类型之间的转换:
1、自动转换:我们一般说类型转换,要保证是同一种数据类型,小范围会自动向大范围转型
2、强制转换:如果不是同一种类型的数据,=号右边的值范围大,左边范围小,那么就需要使用强制转换
语法:(datatype)
3、强制转换的时候,有可能数据丢失,不精确了