Java基础:运算符
运算符 ()最优先
算数运算符:+, - , *, /,%, ++, --
- 加减乘除
//进行整数间的除法时应注意将类型进行转换
int a = 10;
int b = 20;
System.out.println(a/(double)b);
整数运算时存在long类型,结果转化为Long;没有时转换为Int类型
long a = 1234567829347923424L;
int b = 1234;
short c = 34;
byte d = 8;
System.out.println(a+b+c+d);//Long
System.out.println(b+c+d);//Int
System.out.println(c+d);//Int
-
取模,取余数:%
-
自增/自减:++, --(一元运算符)
//++ -- 自增,自减
int a = 3;
int b = a++; //先给b赋值再进行自增,因此b的值为3
System.out.println(a); //在赋值后a自增至4
int c = ++a; //先自增后赋值,a自增至5,对c赋值为5
System.out.println(a); //5
System.out.println(b); //3
System.out.println(c); //5
- 幂运算:使用工具类操作
//幂运算 2^3 = 2*2*2
double pow = Math.pow(2, 3);
System.out.println(pow);
关系运算符:>, <, <=, >=, ==, !=(instanceof),
返回结果:布尔值
逻辑运算符
- 与and:&&,两个为真结果为true
- 或or:||,有真结果为true
- 非:!,取反,真变为假,假变为真
短路运算
与预算时,第一部分为假,直接判定结果为false,不进行对第二部分的判定。
//短路运算
int c = 5;
boolean d = (c<4)&&(++c>5);
System.out.println(d); //false
System.out.println(c); //c=5,没有进行自增操作,证明没有运行第二部分
位运算
位运算符:&, |, ^, ~, >>, <<, (>>>)
A = 0011 1100
B = 0000 1101
-
与运算:A&B = 0000 1100(同时为1的时候为1)
-
或运算:A|B = 0011 1101(有1的时候为1)
-
异或运算:A^B = 0011 0001(相同为0,不同为1)
-
非运算:~B = 1111 0010(所有位取反)
?:2*8 如何运算最快
//2*8 = 2*2*2*2
/*
二进制中2的表示: 0000 0010
二进制将2左移一位为4: 0000 0100
二进制将2左移三位为16:0001 0000
*/
System.out.println(2<<3); //16
位运算的效率极高!!
拓展赋值运算符
拓展赋值运算符:(少用)
- a += b : a = a + b
- a -= b : a = a - b
- a *= b : a = a * b
- a /= b : a = a / b
字符串连接符
int a = 10;
int b = 20;
//字符串链接符
System.out.println(a+b);//30
System.out.println("_"+a+b);//_1020,在连接中加入String,将其他变量都转换为String类型
System.out.println("_"+(a+b));//_30,添加括号后优先进行运算,再转换为String类型
System.out.println(a+b+"_");//30_,按照顺序先进行运算,再转化为String类型
三元运算符
x ? y : z
如果x == true ,结果为y,否则为z
int s = 80;
String type = s>60 ? "及格":"不及格";
System.out.println(type);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix