第十课【关于运算符】

运算符

  • 算术运算符: + , - , * , / , % , ++ , - -
  • 赋值运算符:
  • 关系运算符: > , < , >= , = = , != , instanceof
  • 逻辑运算符: && , || , !
  • 位运算符: & , | , ^ , ~ , >> , << , >>>
  • 条件运算符: ? :
  • 扩展赋值运算符:+=,=,=,/=
package operator;

public class Demo01 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int c = 10;
        int d = 10;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/b);//输出为0,int型变量结果小数被抹了
        System.out.println(a/(double)b);//输出为0.5
    }
}

package operator;

public class Demo02 {
    public static void main(String[] args) {
        long a = 1000000000000L;
        int  b = 588;
        short c = 17;
        byte d =6;

        //有long就转为long,没long都是int 就算变量没有int类型的也是int
        System.out.println(a+b+c+d); //long
        System.out.println(b+c+d);  //int
        System.out.println((double)c+d); //int
        //运算结果的数据类型为参与运算的变量中的最高优先级的数据类型
    }
}

package operator;

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符产生的结果 true false 是个布尔值

        int a = 10;
        int b = 100;
        int c = 205;


        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
        System.out.println(c%b); //取余 也称模运算
    }
}


Math类

//幂运算: 如2^3 = 8 , 很多运算我们会使用一些工具类来运算
        //如Math数学类
        double pow = Math.pow(2, 3);
        System.out.println(pow);

逻辑运算符、位运算

package operator;

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

        /*
        * 位运算
        *
        * a = 0000 0011
        * b = 0000 1100
        *--------------------
        * a & b = 0000 0000
        * a | b = 0000 1111
        * a ^ b = 0000 1111   相同为0 不同为1
        * ~ b = 1111 0011  取反
        *
        *
        * 二进制  效率及高!!!
        * 2*8 = 16
        * 2*2*2*2
        * <<  左移  *2
        * >>  右移  /2
        * */
    }
}

三元运算符、字符串连接符

package operator;

public class Demo05 {
    public static void main(String[] args) {

        //三元运算符
        // x ? y : z
        //如果 x为真 则结果为y 若x为假 则结果为z

        int score = 400;
        String result = (score<350) ? "上班吧" : "wsh上岸啦!!!" ;
        System.out.println(result);

        //字符串连接符  +
        int a = 10;
        int b = 20;
        System.out.println("String"+a+b);//:1020   先遇到String类型会把其他操作数也转换成String型的
        System.out.println(a+b+"String");//:30   先运算结果为30 后变为String型了
    }
}

运算符优先级

优先级描述运算符
1括号()、[]
2正负号+、-
3自增自减,非++、–、!
4乘除,取余*、/、%
5加减+、-
6移位运算<<、>>、>>>
7大小关系>、>=、<、<=
8相等关系==、!=
9按位与&
10按位异或^
11按位或|
12逻辑与&&
13逻辑或||
14条件运算?:
15赋值运算=、+=、-=、*=、/=、%=
16位赋值运算&=、|=、<<=、>>=、>>>=

注:表为博客园大佬的文章里看的,昵称: LinkerIsKnow

若侵删

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值