逻辑运算符、位运算符、条件运算符和扩展赋值运算符以及字符串连接符

逻辑运算符、位运算符、条件运算符和扩展赋值运算符以及字符串连接符

逻辑运算符

与&& 或|| 非!

package base;

public class Demo08 {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;

        System.out.println(a&&b);//false,有假则假,其中0为假,非零为真
        System.out.println(a||b);//true,有真则真
        System.out.println(!(a&&b));//true,取反操作,单目运算符优先级最高,但是()优先级比单目运算符还高

        //注意短路,例如b&&a,发现b为假就不用再运算后边的了,结果直接为假
        int c = 5;
        boolean d = (c<4)&&(c++<4);//c<4为假,短路则不执行c++,c的值依然为5
        System.out.println(d);//false
        System.out.println(c);//5
        int i = 5;
        boolean j = (i==5)&&(i++>5);//i先等于5,不短路,不大于5,结果为假,但之后i等于6
        System.out.println(j);//false
        System.out.println(i);
    }
}

位运算符

将数转化为二进制进行位运算

与&,有假则假(0为假1为真)。

|或,有真则真。

~非,取反。

^异或,相同为假,不同为真。

左移<<,高位舍弃,低位补0,如果舍弃的高位没有1,则左移一位就是乘2。

右移>>,低位舍弃,高位补0,右移一位就是除以2,且舍去小数。

条件运算符

//三目运算符(条件运算符)
        //x ? y : z
        //如果x==true,则结果为y,否则为z
        int score = 80;
        String type = score>60?"及格":"不及格";
        System.out.println(type);

扩展运算符以及字符串连接符

public class Demo09 {
    public static void main(String[] args) {
        int a = 10,b = 20;
        a+=b;//结合方向是从右至左,a=a+b,30
        a-=b;//10
        System.out.println(a);

        //字符串链接符+,String
        System.out.println(a+b);
        System.out.println("结果是"+a+b);//结果是1020,因为前面有字符串,后边的+连接符会把后边的转化为String
        System.out.println(a+b+"结果是");//30结果是

初识Math类

double pow = Math.pow(2,3);//math就是错误的,M只能大写
        System.out.println(pow);//8.0
//pow要是定义成int类型也会报错,因为Math.pow()返回的是double类型
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值