运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。

1.算术运算符

image.png

2.赋值运算符

image.png
**

3.比较运算符(关系运算符)

image.png

4.逻辑运算符image.png

5.位运算符

image.png
image.png**

6.三元运算符

image.png
image.png
package day03;
public class AriTest {
public static void main(String[] args) {
int i=153;
int g,s,b;
g=i%10;
s=i/10%10;
b=i/100;
System.out.println(“百位是:”+b);
System.out.println(“十位是:”+s);
System.out.println(“个位是:”+g);


//*
int x = 1;
int y=1;
if(x++==2 & ++y==2){
x =7;
}
System.out.println(“x=”+x+”,y=”+y); //x=2,y=2

//**

int x2 = 1,y2 = 1;
if(x2++==1 || ++y2==1){
x2=7;
}
System.out.println(“x2=”+x2+”,y2=”+y2);
//“|”和“||”的区别同理,||表示:当左边为真,右边不参与运算


//**
/*
结论:
1.位运算符操作的都是整数类型的数据
2.<<:在一定的范围内,每 向左移一位,相当于*2
3.>>:在一定的范围内,每 向右移一位,相当于/2

面试题:最高效的方式计算2*8? 2<<3或 8<<1

*/


int i3=21;
System.out.println(“i3<<2=”+(i3<<2)); //i3<<2=84
System.out.println(“i3<<3=”+(i3<<3)); //i3<<3=168
System.out.println(“i3<<27=”+(i3<<27)); //i3<<27=-1476395008

//*

int m=12,n=5;
System.out.println(“m&n:”+(m&n)); //m&n:4
System.out.println(“m|n:”+(m|n)); //m|n:13
System.out.println(“m^n:”+(m^n)); //m^n:9

//*三元运算符**

/*1.结构:(条件表达式)? 表达式1:表达式2

2.说明
①条件表达式的结果为boolean类型
②根据条件表达式真或假,决定执行表达式1,还是表达式2
如果表达式为true ,则执行表达式1
如果表达式为flase ,则执行表达式2
③表达式1和表达式2的要求是一致的
例:double num=(m>n)?2:1.0;
一个字符串,一个基础类型就不能了
④三元运算符是可以嵌套使用的

3.凡是可以使用三元运算符的地方,都可以改成if else
反之,不成立!!!!!!

4.如果程序可以使用三元运算符,又可以使用if-else结构,那么优先选择三元运算符
原因:程序简洁,可读性高
*/

int m2=12;
int n2=5;
int max=(m>n)? m:n;
System.out.println(“max=”+max);


}
}