1.赋值
赋值使用操作符“=”,指的是将等号右边的值(可以是常数,变量,或者表达式,但是它需要能生成一个值)复制给左边的变量(左边的必须是一个变量,并且是具有物理空间的变量)。
尤其需要注意的是对对象的赋值,对一个对象进行操作的时候,实际上是在操作对象的引用。
例如:
class T{
int num;
}
public class Demo{
public void fn(){
T A = new T();
T B = new T();
B = A;
A.num = 10;
Sysout.out.print(B.num);
}
输出10
在上面的例子中,将A赋值给B,在这里操作的是A的引用,是将A的引用复制给B,结果是A,B这两个引用指向内存中同一个对象,在操作A引用的对象的时候,其实也是在操作B引用的对象,因为A,B引用指向的是一个对象(有点绕口,需要想想)。
2.算数操作符
- +,-,*,/,%
- ++a,–a,a++,a–
3.关系操作符
>,<,>=,<=,==,!=
4.逻辑操作符
与(&&),或(||),非(!)。注意区分逻辑操作符与按位操作符(&,|,~,^)。
逻辑操作符只能使用在布尔值,并且自带短路的现象。一般不要用按位操作符来代替逻辑操作符
5.类型转换
在表达式中最后的类型会按表达式中的范围最大的类型来算,在对类型比int小的类型进行运算时,会自动将小类型转换为int型,大类型转换为小类型的时候需要进行强转,并且会有信息丢失的可能。