运算符及其拓展

运算符及其拓展

基本运算符

  1. *算术运算符:+,-, * , /, % ,++,--

例1:

  public static void main(String[] args) {
        // 二元运算符
        //ctrl + d : 复制当前行到下一行
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;
         //取余 模运算
        System.out.println(c%a);//c / a    21 / 10 = 2....1
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);

例2:

public class Demo02 {
    public static void main(String[] args) {
        long a = 14141414L;
        int b = 123;
        short c = 10;
        byte d = 8;
​
        //多个操作中有一个数为:Long 结果类型:Long
        //如果没有Long  结果类型都为:int
        System.out.println(a+b+c+d);//Long
        System.out.println(b+c+d);//int
        System.out.println(c+d);//int
        System.out.println((double)c+d);
​

  1. *赋值运算符:=

  2. *关系运算符:<, >, <= ,>= , == , != intstanceof

例题

 public static void main(String[] args) {
        //关系运算符返回结果: 正确,错误,  布尔值
        //if
​
        int a = 10;
        int b = 20;
        int c = 21;
        //取余 模运算
        System.out.println(c%a);//c / a    21 / 10 = 2....1
​
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
​
  1. *逻辑运算符:&&(与) , ||(或) , !(取反)

  2. 位运算符:& , | , ^ , ~ , >> , << , >>>

  3. 条件运算符:? , :

  4. 扩展赋值运算符:+= , -= , *= , /=

自增自减运算符

例题

package operator;
​
public class Demo04 {
    public static void main(String[] args) {
        // ++  --  自增 自减  一元运算符
        int a = 3;
​
        int b = a++;//执行完这行代码,先给b赋值,在自增
        //a = a + 1;
        System.out.println(a);
        //a = a + 1;
        int c = ++a;//执行完这行代码,先自增,在给b赋值
​
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
​
        System.out.println("=========================================");
        int d = 3;
​
        int e = d--;//执行完这行代码,先给e赋值,在自减
        //d = d - 1;
        System.out.println(d);
        //d = d - 1;
        int g = --d; //执行完这行代码,先自减,再给e赋值
​
        System.out.println(d);
        System.out.println(e);
        System.out.println(g);
​
        System.out.println("=========================================");
​
        //幂运算 2^3 2*2*2 = 8 // 很多运算,我们会使用一些工具类来操作
        double pow= Math.pow(2,3);
        System.out.println(pow);
​
    }
}
​

逻辑运算符

例题

package operator;
​
//逻辑运算符
public class Demo05 {
    public static void main(String[] args) {
        //与(and)     或(or)       非(取反)
        boolean a = true;
        boolean b = false;
​
        System.out.println("a && b:"+(a&&b));  //逻辑与运算:两个变量都为真,结果才为ture
        System.out.println("a || b:"+(a||b));  //逻辑或运算:两个变量有一个为真,则结果才为ture
        System.out.println("!(a && b:)"+(a&&b)); //如果是真,则变假; 如果是假,则变真
​
        System.out.println("===========");
        //短路运算
        int c = 5;
        boolean d = (c<4)&&(c++<4);// c<4假,c++<4假
        System.out.println(d);
        System.out.println(c);
​
    }
}
​

位运算

package operator;
​
public class Demo06 {
    public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        --------------------------------------------------------------
        A&B = 0000 1100     //A与B比较,如果二个为一则为0
        A|B = 0011 1101     //如果A,B 对应位都为0,则结果为0,否则为1;如果对应位都为1,则结果为1,否则为0
        A^B = 0011 0001     //如果A,B对应位相同则为0,否则为1
        ~B = 1111 0010      //取反
        ---------------------------------------------------------------
              //计算 2*8=16     2*2*2*2
              <<  *2
              >>  /2
              
              0000 0000  0
              0000 0001  1
              0000 0010  2
              0000 0011  3
              0000 0100  4
              0000 1000  8
              0001 0000  16
              */
        System.out.println(2<<3);
​
    }
}
​

扩展赋值运算符

package operator;
​
public class Demo07 {
    public static void main(String[] args) {
        int a =10;
        int b =20;
        int c =23;
        int d =24;
​
        a+=b;//a = a+b
        c-=d;//c = c-d
        System.out.println(a);
        System.out.println(c);
​
        System.out.println("------------------------------------------");
        //字符串连接符  + , String
        System.out.println(""+a+b);//字符串在前,后面拼接
        System.out.println(a+b+"");//字符串在后,前面依旧运算
​
    }
}
​

三元运算符

package operator;
​
//三元运算符
public class Demo08 {
    public static void main(String[] args) {
        // x ? y ;z
        //如果x==ture, 则结果为y, 否则结果为z
        
        int score = 80;
        String type = score <60 ?"不及格":"及格";//必须会
        //if
        System.out.println(type);
    }
}
​

点击转到视频

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值