Java基础-运算符(二)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/102930781

位运算符

  • 位运算符是对操作数以二进制比特位为单位进行操作和运算,操作数和结果都是整型数。
  • 如果操作的对象是char、byte、short,位移动作发生前其值会自动晋升为int,运算结果 也为int
代码示例
package com.cwl.base.day01;

/**
 * @program: java_base
 * @description: 位运算符
 * @author: ChenWenLong
 * @create: 2019-11-05 15:09
 **/
public class TestOperator04 {

    public static void main(String[] args) {
        int  a = 3;
        int  b =4;
        System.out.println(a&b);
        System.out.println(a|b);
        System.out.println(a^b);
        System.out.println(~a);

        //移位
        int  c = 3<<2;
        System.out.println(c);
        System.out.println(12>>1);
    }
}
条件运算符
  • 语法格式
  • x ? y : z
  • 唯一的三目运算符
  • 执行过程
  • 其中 x 为 boolean 类型表达式,先计算 x 的值,若为true,则整个三目运算的结果为表达式 y 的值,否则整个运算结果为表达式 z 的值
package com.cwl.base.day01;

/**
 * @program: java_base
 * @description: 条件运算符(三元运算符)
 * @author: ChenWenLong
 * @create: 2019-11-05 15:10
 **/
public class TestOperator06 {

    public static void main(String[] args) {
        int  score = 80;
        int  x = -100;
        String   type = score<60?"不及格":"及格";
        System.out.println(type);

        if(score<60){
            System.out.println("不及格");
        }else{
            System.out.println("及格");
        }

        System.out.println(x > 0 ? 1 : (x == 0 ? 0 : -1));

    }
}
运算符的优先级
  • 不需要去刻意的记优先级关系
  • 赋值<三目<逻辑<关系<算术<单目
  • 理解运算符的结合性
字符串运算符
package com.cwl.base.day01;

/**
 * @program: java_base
 * @description: 字符串运算符
 * @author: ChenWenLong
 * @create: 2019-11-05 15:10
 **/
public class TestOperator05 {

    public static void main(String[] args) {
        String  a  = "3";
        int  b = 4;
        int  c = 5;
        char  d = 'a';
        System.out.println(a+b+c);
        System.out.println(b+c+a);
        System.out.println(d+4);     //97+4=101
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励