赋值运算符
= += -= *= /= %=
算数运算符
规则: 操作数1 运算符 操作数2
+: 可以对整数和浮点数做加法操作
-: 可以对整数和浮点数做减法操作
*: 可以对整数和浮点数做乘法操作
/: 可以对整数和浮点数做除法操作
(两个整数相除得整数=略去小数部分,
如果要得到小数,需要将其中一个转成浮点数)
%: 可以对整数和浮点数做求余操作
注意点
1.(特别是在计算中,金融行业中)
System.out.println( 5.3 - 4.2) ;//1.0999999999996
System. out.println( 0.08f + 0.01f);//0.089999996
System. out.println( 6.9*7 );//48.300000000000004
System.out .println( 7.6 % 2.0);//1.599999999996
因为不论是float还是double都是浮点数,而计算机是二进制的,浮点数会失去定的精确度。
*注 根本原因是:十进制值通常没有完全相同的二进制表示形式,十进制数的二进制表示形式可能不精确。只能无限接近于那个值。
所以使用BigDecimal 详情百度
-
字符串算术运算
System.out.println(3 + " " ); //3
System.out.println(3 + " "+5 );//35
System.out.println(4+3 + " " ); //7 -
字符算术运算
System.out.println(‘a’+3);//100 a字符代表数字97
自增自减
public classZiZeng {
public static void main (String[] args) {
int a =9;
int b=5;
// int res1=a++; //res1=a; a++:
// int res2=++b; //b++; res2 =b;
// System.out.println( a) ;//10
// System. out.println(b) ;//6
// System.out.println(resl);//9
// System.out.println( res2);//6
int res1=a++ + 1; //res1=a+1; a++:
int res2=++b + 2 ; //b++; res2 =b+2;
System.out.println( a) ;//10
System. out.println(b) ;//6
System.out.println(resl);//10
System.out.println( res2);//8
}
}
比较运算符
结果为boolean类型(true/false)
< <= > >= == !=
注意区分 == 和=
逻辑运算符
规则: 操作数1 运算符 操作数2
&& 短路 与
|| 短路 或
&
|
^ 异或
! 非(取反)
与:两边同时满足条件的时候为true (其他情况为false)
或:两边只要满足一个条件结果为true (其他情况为false)
异或:两边结果不-样的时候结果为true (其他情况为false)