3. 有趣的运算符

/ 除

小试牛刀 : 试着计算看你能算对么 ?

	public static void main(String[] args) {
        System.out.println(5 / 2);
        System.out.println((float) 5 / 2);
        System.out.println(5 / (float)2);
        System.out.println((float) (5 / 2));
    }

在这里插入图片描述

	public static void main(String[] args) {
        System.out.println(5 / 0);
    }

运行这个代码会报出异常

在这里插入图片描述

    public static void main(String[] args) {
        System.out.println(10 % 3);
        System.out.println(10 % -3);
        System.out.println(-10 % 3);
        System.out.println(-10 % -3);
    }

在这里插入图片描述
答案符号看被除数符号

	public static void main(String[] args) {
        System.out.println(11.5 % 2);// 1.5
    }

+= 的类型转化例子

    public static void main(String[] args) {
        short s1 = 10;
//        s1 = s1 + 1;//类型不一样
        s1 += 1;//相当于 s1 = (short) (s1 + 1);
    }

前后置加加 与 前后置减减 的区别

前置加加

    public static void main(String[] args) {
        int a = 1;
        int b = ++a;
        System.out.println(a);//a += 1   b = a
        System.out.println(b);
    }

后置加加

    public static void main(String[] args) {
        int a = 1;
        int b = a++;//b = a   a += 1
        System.out.println(a);
        System.out.println(b);
    }

逻辑运算符😀
布尔表达式 && 布尔表达式

&& 并且(短路与)

注意: 如果表达式1为假那么表达式2则不会执行, 直接返回false
需要左右两个条件都满足, 有一个错, 则返回 false

|| 或者(短路或)

注意: 如果表达式1为真那么表达式2则不会执行, 直接返回true
需要左右两个条件只需要一个满足就好, 有一个对, 就返回 true

位运算符😁

&按位与一假则假
|按位或一真则真
~按位取反真变假, 假变真
^按位异或同0异1

如下:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

左移<<
右移>>
无符号左移<<<

<< (左移)

最左侧位不要了, 最右侧补 0
在这里插入图片描述
注意:向左移位时,丢弃的是符号位,因此正数左移可能会编程负数

>> (右移)

最右侧位不要了, 最左侧补符号位(正数补0, 负数补1)
在这里插入图片描述

>>> 无符号右移

最右侧位不要了, 最左侧补 0

在这里插入图片描述
注意:

  1. 左移 1 位, 相当于原数字 * 2. 左移 N 位, 相当于原数字 * 2 的N次方
  2. 右移 1 位, 相当于原数字 / 2. 右移 N 位, 相当于原数字 / 2 的N次方
  3. 由于计算机计算移位效率高于计算乘除, 当某个代码正好乘除 2 的N次方的时候可以用移位运算代替
  4. 移动负数位或者移位位数过大都没有意义

三目运算符

表达式1 ? 表达式2 : 表达式3

当表达式1 的值为 true 时, 整个表达式的值为表达式2的值;
当 表达式1 的值为 false 时, 整个表达式的值为表达式3 的值.
这是 Java 中唯一的一个 三目运算符

今天的分享到此结束 😎

2022年9月22日21:33:32

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱听歌的阿漓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值