2.运算符知识记录

 

1.整型数据运算类型转换

查看代码

package operator;

public class Demo01 {
    public static void main(String[] args) {
        long a = 12345678911L;
        int b = 124578;
        short c = 100;
        byte d = 15;

        //ctrl + D 复制当前行到下一行
        System.out.println(a + b + c + d); //long型
        System.out.println(b + c + d); //int型
        System.out.println(c + d); //int型
    }
}

总结:多个操作数中有一个数为 Long,结果类型也为 Long;如果没有Long时,结果都是 int(无论是不是 int操作,都是 int ==》 自动转型)。

 

 

查看代码
package operator;

public class Demo02 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println(a / b);
        System.out.println(a /(double)b);
        System.out.println((double)a / b);
        System.out.println((a * 1.0) / b);
        System.out.println(a / (b * 1.0));
    }
}

总结:这里也是同理,当多个操作数中有一个为 double类型,结果为double类型(多个操作数先会统一类型,然后记性运算)。

 

 

2.逻辑运算之短路运算

查看代码
package operator;

public class Demo03 {
    public static void main(String[] args) {
        int c = 5;
        boolean d = (c < 4) && (c++ <4);  //c < 4 已经是假,后面的 c++ < 4 不会执行
        System.out.println(d);
        System.out.println(c);

        int e = 5;
        boolean f = (e > 4) || (e++ <=4);  //e > 4 已经是真,后面的 e++ <= 4不会执行
        System.out.println(f);
        System.out.println(e);
    }
}

总结:短路运算主要涉及 && 及 || 这两个运算符 

 

 

3.位运算符

 

 

4.字符串连接符

查看代码
public class Demo03 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;

        System.out.println(a + b);
        System.out.println(a + b + ""); // a+b=30 然后遇到“"再转换类型为String
        System.out.println("" + a + b); // “” + a转换类型为String运算,后面操作数也是转换成字符串运算
    }
}

总结:什么时候转换类型,取决于运算顺序。

 

posted @ 2022-03-27 20:07  Jukim  阅读(42)  评论(0编辑  收藏  举报