赋值运算符

1.基本赋值运算符:就是一个等号“=” ,代表将右侧的数据交给左侧的变量。

2.复合赋值运算符:

A: += a+=1 相当于 a+a=1

B: -= b-=4 相当于 b=b-4

C: *= c *=5 相当于 c=c *5

D: /= d/=6 相当于 d=d/6

E: %= e%=7 相当于 e=e%7

注意事项

1.只有变量可以使用赋值运算符,常量使用会发生错误

2.复合赋值运算符其中隐含了一个强制类型转换

比较运算符

1.== 比较符号两边是否相等,相等结果是true

2.< 比较符号左边的数据是否小于右边的数据,如果小于结果是true

3.> 比较符号左边的数据是否大于右边的数据,如果大于结果是true

4.<= 比较符号左边的数据是否小于等于右边的数据,如果小于等于结果是true

5.>= 比较符号左边的数据是否大于等于右边的数据,如果大于等于结果是true

6.!= 不等于符号,如果符号两边的数据不相等,结果是true

注意事项

1.比较运算符的结果一定是一个布尔值,成立就是true,不成立就是false

2.如果进行多次判断,不能连着写

数学当中的写法,例如: 1<x<3 程序当中【不允许】这种写法

逻辑运算符

1.与(并且): 符号 && 全都是true,才是true;否则就是false

2.或(或者): 符号 || 至少一个是true,就是true;全都是false,才是false

3.非(取反): 符号 ! 本来是true,变成false,本来是false,变成true

4.短路:“&&”,“||”具有短路效果;如果左边已经可以判断到最终结果,那么右边的代码将不再执 行,从而节省一定的性能

public class java{
    public static void main(String[] args){
        System.oyt.println(true&&false);//false
 		System.oyt.println(3<4&&10>5);//true
        
 		System.oyt.println(true||false);//true
        System.oyt.println(true&&true);//true
        System.oyt.println(false&&false);//false
        
        System.oyt.println(true);//true
        System.oyt.println(!true);//false
        
        //短路效果
        int a=10;
        System.oyt.println(3>4&&++a<100);//false
        System.oyt.println(a);//如果程序右边执行了,a打印输出应该为11,但实际情况为10
    }
}
tips

对于1<x<3的情况,可以写成 {1<x&&x<3}

三元运算符

/*
一元运算符:只需要一个数据就可进行操作,例如:!、++、--
二元运算符:需要两个数据才可以运算的运算符,例如:+、=
三元运算符:需要三个数据才可以进行操作的运算符

格式:
数据类型 变量名称=条件判断?表达式A:表达式B

流程:
首先判断条件是否成立
	如果成立为true,那么将表达式A的值赋给左侧的变量;
	如果不成立为false,那么将表达式B的值赋给左侧的变量;
二者选其一。
*/
public class java{
    public static void main(String[] args){
        int a=10;
        int b=20;
        
		//数据类型 变量名称=条件判断?表达式A;表达式B
        //判断a>b是否成立,如果成立,将a赋值给max,否则将b赋值给max;
        int max=a>b?a:b;
        Syetem.out.println(max);//打印输出20
    }
}
注意事项

1.必须同时保证表达式A和表达式B都符合左侧数据类型的要求

int num=3>4?2.5:10;//这是错误写法!!!

2.三元运算符的结果必须被使用

System.out.println(a>b?a:b);//正确写法,直接打印出a或者b的值
a>b?a:b;//错误写法!!没有将选择后的值进行赋值使用