青草味的懒羊羊  
运算符
  1. 算术运算符:+, -, *, /, %, ++, --
int a=10;
int b=20;
int c=25;
int d=25;
System.out.println(a+b);//30  加
System.out.println(a-b);//-10  减
System.out.println(a*b);//200  乘
System.out.println(a/(double)b);//0.5 除  (10/20=0.5 取整为0) 解决办法:转其中一个为double

long a=12121212121212L;
int b=123;
short c=10;
byte d=8;
System.out.println(a+b+c+d);//long 与long一起运算结果是long类型,与double运算结果是double类型
System.out.println(b+c+d);//int
System.out.println(c+d);//int

//++ --自增 自减  一元运算符
int a=3;
int b=a++;//当前 b=3 a=4  先给b赋值,后a自增
//a=a+1
int c=++a;//当前 c=5 a=5 b=3  先自增,后给c赋值
System.out.println(a);//5
System.out.println(b);//3
System.out.println(c);//5

//幂运算 2^3  2*2*2=8  很多运算会使用一些工具类操作!
double pow = Math.pow(2, 3);
System.out.println(pow);
  1. 赋值运算符: = ,+= ,-= ,*= ,/= ,%=
//赋值运算符  += -=
int a=10;
int b=20;
a+=b; //a=a+b;
a-=b; //a=a-b;
System.out.println(a);
System.out.println(b);

//字符串连接符  +  , String
System.out.println(a+b);     //30
System.out.println(""+a+b);  //1020
System.out.println(a+b+"");  //30
  1. 关系运算符: >, <, >=, <=, ==, != instanceof
//关系运算符的返回结果:正确,错误 布尔值
int a=10;
int b=20;
int c=21;
System.out.println(c%a);//1 取余数 模运算 21/10=2....1
System.out.println(a>b);//false
System.out.println(a<b);//true
System.out.println(a=b);//false
System.out.println(a!=b);//true
  1. 逻辑运算符:&&, ||, !
//与(and) 或(or) 非(取反)
boolean a=true;
boolean b=false;
System.out.println("a && b:"+(a&&b));//false 逻辑与运算:两个变量都为真,结果才为true
System.out.println("a || b:"+(a||b));//true  逻辑或运算:两个变量有一个为真,结果就为true
System.out.println("!(a && b):"+(!(a&&b)));//true ///如果是真,则为假,如果是假则为真

//短路运算
int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d);//false
System.out.println(c);//5
  1. 位运算: &, |, ^, ~, >>, <<, >>>(了解)
 /*
        A=0011 1100
        B=0000 1101
        -----------------
        A&B =0000 1100
        A|B =0011 1101
        A^B =0011 0001
        ~B =1111 0010
        面试题:2*8怎么运算最快 2*2*2*2
        效率极高
        <<左移   *2
        >>右移   /2
        0000 0000  0
        0000 0001  1  2^0  1后几个零就是几次幂
        0000 0010  2  2^1
        0000 0011  3
        0000 0100  4  2^2
        0000 1000  8  2^3
        0001 0000  16 2^4
*/
        System.out.println(6>>2);
        //<<左移   *2
        //>>右移   /2
        // 6>>2 == 6/2/2
        // 5>>3 == 5/2/2/2
        // 3<<2 == 3*2*2
        // 3<<3 == 3*2*2*2
  1. 三元运算符(条件运算符)
// x ? y : z  如果x==true,则结果为y,否则结果为z
int score = 80;
String type=score<60?"不及格":"及格"; //必须掌握
System.out.println(type);
posted on 2021-09-05 21:12  青草味的懒羊羊  阅读(35)  评论(0)    收藏  举报