java数据类型扩展

java数据类型的扩展

小结

  1. 整数数据类型的扩展(不同进制的表示)

  2. 浮点数数据类型的扩展{

    结论:

    • 浮点数不能用于比较
    • 如果需要使用,使用math工具类BigDecimal

    }

  3. 字符数据类型扩展{

    字符数据类型扩展

    • 结论:
    • 所有的字符本质还是数字
    • 通过Unicode编码
    • 例:97:a
    • 2字节:0 - 2^16(65536)

    }

  4. 转义字符的扩展

  5. 字符串的扩展(用String对象创建的是从内存分析的)

  6. 布尔值的扩展

整数数据类型的扩展

public class demo1 {
    public static void main(String[] args) {
        // 整数的扩展:
        // 进制的写法:

        // 二进制,以0b开头
        int num1 = 0b10;

        // 八进制,以0开头
        int num2 = 010;

        // 十进制,正常写
        int num3 = 10;

        // 十六进制,以0x开头
        int num4 = 0x10;

        System.out.println("二进制10:"+num1);
        System.out.println("八进制10:"+num2);
        System.out.println("十进制10:"+num3);
        System.out.println("十六进制10:"+num4);
    }
}

浮点数数据类型的扩展

/*
* 浮点数数据类型扩展
* 结论:
* 浮点数不能用于比较
* 如果需要使用,使用math工具类BigDecimal
* import java.math.BigDecimal;
* */

public class demo2 {
    public static void main(String[] args) {
        // 浮点数0.1
        float f = (float) 0.1;
        // 浮点数0.1
        double d = 0.1;
        
        // 数值相等的浮点数却不相等
        //输出为false
        System.out.println(f == d);

        // 随便一个浮点数
        float f1 = 213123123132132132f;

        // 将f1+1赋给d1
        double d1 = f1 + 1;

        // 数值不相同的两个浮点数却相等
        System.out.println(f1 == d1);
    }
}

字符数据类型扩展

/*
* 字符数据类型扩展
* 结论:
* 所有的字符本质还是数字
* 通过Unicode编码
* 例:97:a
* 2字节:0 - 2^16(65536)
* */

public class demo3 {
    public static void main(String[] args) {
        char c1 = 'a';
        char c2 = '人';

        // 输出c1
        System.out.println(c1);
        // 将c1强制转换为int输出
        System.out.println((int)c1);

        // 输出c2
        System.out.println(c2);
        // 将c2强制转换为int输出
        System.out.println((int)c2);

        /*
        * 利用转义字符定义(底层)
        * 其中0061为十六进制
        * 也就是十进制的97
        * 此时c3为'a'
        * */
        char c3 = '\u0061';

        System.out.println(c3);
    }
}

转义字符扩展

他人总结的转义字符表

作者:SummerChill

字符串扩展

/*
* 字符串的扩展
* 结论:
* 用String对象创建的是从内存分析的
* */

public class demo4 {
    public static void main(String[] args) {

        // 使用new String()对象定义字符串
        String s1 = new String("hello");
        String s2 = new String("hello");

        // 直接定义字符串
        String S1 = "hello";
        String S2 = "hello";

        // 分别比较
        // 使用对象创建的是不同的
        System.out.println(s1 == s2);
        // 直接创建的是相同的
        System.out.println(S1 == S2);
    }
}

布尔值的扩展

public class demo5 {
    public static void main(String[] args) {
        // 定义布尔值
        boolean b1 = true;
        boolean b2 = false;

        // 等价
        if (b1==true) {}
        if (b1) {}

        // 等价
        if (b2 == true){}
        if (b2 != false) {}
        if (!b2) {}
    }
}

本博客为自己根据狂神老师总结。 如果文中有什么错误,欢迎指出。以免更多的人被误导。

posted @ 2022-01-21 16:25  CoderCatIce  阅读(106)  评论(0编辑  收藏  举报