运算符
二元运算符
加+ 减- 乘* 除/ 模%
- 多个相加,有一个为Long类型,结果就为Long类型
- 有一个为double,结果就为double
- short,byte,int相加不管有没有int,结果都是int
关系运算符
返回boolean
> < >= <= == !=
instanceof
a instance of b----->a指向的实际类型是不是b的子类型
- obj 必须为引用类型,不能是基本类型
int i = 0;
System.out.println(i instanceof Integer);//编译不通过
System.out.println(i instanceof Object);//编译不通过
instaceof 运算福只能用作对象的判断
- obj为null
System.out.println(null instanceof Object);//false
- obj为class类的实例对象
Integer integer = new Integer(1);
System.out.println(integer instanceof Integer);//true
- obj为class接口的实现类
ArrayList arrayList = new ArrayList();
System.out.println(arrayList instanceof List);//true
List list = new ArrayList();
System.out.println(list instanceof ArrayList);//true
- obj为class类的直接或间接子类
public class Person {
}
public class Man extends Person{
}
Person p1 = new Person();
Person p2 = new Man();
Man m1 = new Man();
System.out.println(p1 instanceof Man);//false
System.out.println(p2 instanceof Man);//true
System.out.println(m1 instanceof Man);//true
注意第一种情况, p1 instanceof Man ,Man 是 Person 的子类,Person 不是 Man 的子类,所以返回结果为 false。
Person p1 = new Person();
System.out.println(p1 instanceof String);//编译报错
System.out.println(p1 instanceof List);//false
System.out.println(p1 instanceof List<?>);//false
System.out.println(p1 instanceof List<Person>);//编译报错
自增,自减,一元运算符
int a = 3;
int b = a++;
int c = ++a;
System.out.println(a);//5
System.out.println(b);//3
System.out.println(c);//5
a++ 先参与运算,再自增
++a 先自增,再参与运算
逻辑运算符
与 或 非
位运算
A 0011 1100
B 0000 1101
-
与:A&B
结果:0000 1100 两个都为1才为1
-
或:A|B
结果:0011 1101 都为0才为0
-
异或:A^B
结果:0011 0001 连个相同则为0
-
取反:~B
结果:1111 0010
-
左移 << 左移一位 = *2
-
右移 >> 右移一位 = /2
2<<3=16 == 2左移3位,2 * 2 * 2 * 2 = 16 2 * 2的3次方
0000 0000 0
0000 0001 1
0000 0010 2
0000 0100 4
0000 1000 8
0001 0000 16
三元运算符
x ? y : z
如果x==true,结果为y,否则为z
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY