-
取余:% (模运算)
-
与:&& 或 :|| 非 :!
-
有long类型运算时,结果为long,无long时,结果都为int
-
关系运算符返回的结果为布尔值 true false
-
++ 自增 --自减
int a =3;
int b = a++; //先赋值,再运算 (b = 3)
int b = ++a; //先运算,再赋值 (b = 4) -
幂运算:2^3 222 = 8 (很多运算,我们会使用一些工具类来操作)
double pow = Math.pow(3,2);
sout(pow); // 8 -
逻辑运算符:
与(and) 或(or) 非(取反)
boolean a = true;
boolean b = false;
sout(a&&b); /、两个变量都为真,结果才为真
sout(a || b);两个变量有一个(或两个)为真,结果都为真
sout(!(a&&b));小括号内结果为假,结果才为真 -
位运算:
A = 0011 1100;
B = 0000 1101;
A&B //0000 1100 (上下同为1时结果为1,其余为0)
A| B //0011 1101 (上下都为0时结果为0,其余为1)
A^ B //0011 0001 (上下相同为0,不同为1)
~B // 1111 0010 (非,取反)<< 左移 ; >> 右移 ; << *2 >> /2 0000 0000 0 0000 0001 1 0000 0010 2 0000 0100 4 0000 1000 8 0001 0000 16 sout(2 << 3) //16,相当于2向左移动三位 (运算效率高)
-
扩展赋值运算符:
a+=b;//a = a + b
a-=b; //a = a - b字符串拼接: sout(""+ a + b); //先拼接字符串,再运算 sout(a + b +"");//先运算a+b,再拼接
-
三元运算符:
x ? y : z
//如果x==true 则结果为y,否则为z
int score = 80;
String type = score < 60 ? “不及格” : “及格” (如果成绩score小于60,则结果为不及格,反之则为及格) -
运算符优先级:
1 ()、[]、{} 从左向右
2 !、+、-、~、++、-- 从右向左
3 、/、% 从左向右
4 +、- 从左向右
5 «、»、>>> 从左向右
6 <、<=、>、>=、instanceof 从左向右
7 ==、!= 从左向右
8 & 从左向右
9 ^ 从左向右
10 | 从左向右
11 && 从左向右
12 || 从左向右
13 ?: 从右向左
14 =、+=、-=、=、/=、&=、|=、^=、~=、«=、»=、>>>= 从右向左
java学习笔记4-基本运算符
最新推荐文章于 2024-05-17 14:49:46 发布