其他分享
首页 > 其他分享> > 运算符的基本运算

运算符的基本运算

作者:互联网

运算符

Java支持如下运算符


运算符举例

package Demo;

public class Demo01 {
   public static void main(String[] args) {
       //二元运算符
       int a = 10;
       int b = 20;
       int c = 30;
       int d = 40;

       System.out.println(a+b);
       System.out.println(a-b);
       System.out.println(a*b);
       System.out.println(a/(double)b);  // int/int不等于double, 需要将其中一个强制转换
  }
}


===============================================================
//执行结果
30
-10
200
0.5

package Demo;

public class Demo02 {
   public static void main(String[] args) {
       long a =1231231234L;
       int b = 123;
       short c = 10;
       byte d = 8;
       
       //转型问题
       //有long为long,无long都为int,无论有无int操作
       //有double一定转换为double
       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);  //double
  }
}


===============================================================
//执行结果
1231231375
141
18
18.0

package Demo;

public class Demo03 {
   public static void main(String[] args) {
       //关系运算符返回结果: 正确,错误   布尔值
       //常与if使用
       int a = 10;
       int b = 20;

       System.out.println(a>b);
       System.out.println(a<b);
       System.out.println(a=b);
       System.out.println(a!=b);

       //取余运算符号%
       System.out.println(b%a);
  }
}

===================================================================
//执行结果
false
true
20
false
0

package Demo;

public class Demo04 {
   public static void main(String[] args) {
       // ++   --   自增,自减   一元运算符
       int a = 3;

       int b = a++;   //a+1之前先将a原来的值赋予b

       //上一步操作后a值为4
       System.out.println(a);
       System.out.println(b);

       int c = ++a;   //将a赋予c之前先将a+1,再赋值给c

       //上一步执行后a值为5
       System.out.println(a);
       System.out.println(c);

       //=====================================================
       //幂运算2^3   2*2*2 = 8   很多运算,我们会使用一些工具类来操作!
       double pow = Math.pow(2,3);
       System.out.println(pow);
  }
}

================================================================
//执行结果
4
3
5
5
8.0

package Demo;

public class Demo05 {
   public static void main(String[] args) {
       // 与(and),或(or),非(取非)
       boolean a = true;
       boolean b = false;

       System.out.println("a && b :"+(a&&b));  //逻辑与运算:两个变量都为真,结果才为true
       System.out.println("a || b :"+(a||b));   //逻辑或运算:两个变量有一个为真,那结果才为true
       System.out.println("!(a || b) :"+!(a&&b));  //如果是真,则变为假,如果为假,则变为真

       //短路运算
       int c = 5;
       boolean d = (c<4)&&(c++<4);  //(c<4)已经为false,故后面不执行,此时c仍为5
       System.out.println(d);
       System.out.println(c);
  }
}


=============================================================
//执行结果
a && b :false
a || b :true
!(a || b) :true
false
5
package Demo;

public class Demo06 {
   public static void main(String[] args) {
       /*
       A = 0011 1100
       B = 0000 1101
       --------------------------------------------------
       //位运算
       A&B = 0000 1100 //A与B:两个都是1才为1,其余全为0
       A/B = 0011 1101 //A或B:如果对应位都是0,则为0,否则为1
       A^B = 0011 0001 //异或:相同则为0,不同为1
       ~B = 1111 0010
       
       ===================================================
       面试题:如何计算2*8最快?
       
        2*8 = 16   2*2*2*2
        左移:<<
        右移:>>

        0000 0000   0
        0000 0001   1
        0000 0010   2
        0000 0011   3
        0000 0100   4
        0000 0101   5
        0000 0110   6
        0000 0111   7
        0000 1000   8
        0001 0000   16

        */
       System.out.println(2<<3);
  }
}

======================================================================
//执行结果
16

package Demo;

public class Demo07 {
   public static void main(String[] args) {
       int a = 10;
       int b = 20;

       a+=b;   // a = a+b,此时a值为30
       System.out.println(a);

       a-=b;   // a = a-b,此时a值为30-20
       System.out.println(a);

       //字符串连接符 + ,String,只要有其中一个加数为字符串类型,其余则转为字符串连接
       System.out.println(a+b);
       System.out.println(""+a+b);  //字符串在前面=字符串连接
       System.out.println(a+b+"");  //字符串在后面=整型相加
  }
}

==================================================================
//执行结果
30
10
30
1020
30

package Demo;

//三元运算符
public class Demo08 {
   public static void main(String[] args) {
       // x ? y : z
       //如果x==true,则结果为y,否则结果为z

       int score1 = 80;
       int score2 = 59;
       String type1 = score1 <60 ?"不及格":"及格";
       String type2 = score2 <60 ?"不及格":"及格";

       System.out.println(type1);
       System.out.println(type2);
       //通常用if,但是以上方法必须掌握
  }
}

==================================================================
//执行结果
及格
不及格

狂神说该节链接

狂神说--运算符

免费课程哦!

 

标签:基本,运算,int,System,运算符,println,public,out
来源: https://www.cnblogs.com/bobocha/p/16687368.html