2021-07-16

Java学习笔记

基本运算符

java支持以下运算符:

算术运算符:+ - * / % ++ –

赋值运算符:==

关系运算符:> < >= <= == != instanceof

逻辑运算符:&& || !

位运算符:& | ^ ~ >> << >>>

条件运算符:?:

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

代码示例
public class 基本运算符 {
    public static void main(String[] args) {
        //二元运算符
        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/(double)b);

        long c =123123123123L;
        int d =123;
        short e =10;
        byte f=8;
        System.out.println(c+d+e+f);//多个数有一个数为long,那结果为long
        System.out.println(e+f+d);//如果没有long,结果为int
        System.out.println(e+f);//就算没有int,只要没有long,结果也为int 同理,如果有double,结果为double

        //关系运算符返回的结果:true false
        int z = 10;
        int x = 20;
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);

        int m = 21;
        int n = 10;
        System.out.println(m%n);//取余
    }

}
运行结果
30
-10
200
0.5
123123123264
141
18
false
true
false
true
1
代码示例
public class 自增自减运算符和math类 {
    public static void main(String[] args) {
        //++自增运算符 --自减运算符  一元运算符
        int a =3;
        int b = a++;//a++ a=a+1 执行完这行代码后,先给b赋值,再自增
        System.out.println(a);
        int c = ++a;//先自增,再给c赋值
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        //幂运算 2^3=2*2*2=8 很多运算,可以借助工具类来运算
        double pow = Math.pow(3,2);//借助工具类Math计算3^2
        System.out.println(pow);

    }
}
运算结果
4
5
3
5
9.0
代码示例
public class 逻辑运算符 {
    public static void main(String[] args) {
        //与 and 或or 非not
        boolean a = true;
        boolean b = false;
        System.out.println("a&&b:"+(a&&b));//+在这里是连接的意思
        System.out.println("a||b:"+(a||b));
        System.out.println("!(a&&b:)"+!(a&&b));

        //短路运算
         int c= 5;
         boolean d =(c<4)&&(c++<4);//在z=x&&y的运算中,如果前面的x为假,后面的y就不会执行,直接返回false给z
        System.out.println(d);
        System.out.println(c);//c++不会执行,所以c仍为5

        //位运算符
        /*
        A = 0011 1100
        B = 0000 1101
        A&B = 0000 1100
        A|B = 0011 1101
        A^B = 0011 0001 异或 相同为0 不同为一
        ~B = 1111 0010
        2*8 = 2*2*2*2=16
        << 左移一位 相当于乘2 >> 右移一位 相当于除2
        0000 0000 0
        0000 0001 1
        0000 0010 2
        0000 1000 8
        0001 0000 16
        所以2<<3=16

         */
        System.out.println(2<<3);
        System.out.println(2>>1);
    }
}
运行结果
a&&b:false
a||b:true
!(a&&b:)true
false
5
16
1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值