Java学习笔记_基础语法_数据类型拓展

整数拓展

二进制:0b

八进制:0

十六进制:0x

public class Demo03{
    public static void main(String[] args){
        int i = 10;//十进制
        int i2 = 010;//八进制
        int i3 = 0x10;//十六进制
        int i4 = 0b10;//二进制
        
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println(i4);
    }
}

浮点数拓展

银行业务怎么表示钱?

答案:BigDecimal,数学工具类

float:有限 离散 舍入误差 大约 接近但不等于

最好完全避免使用浮点数进行比较

public class Demo04{
    public static void main(String[] args){
        float f = 0.1f;//0.1
        double d = 1.0/10;//0.1
        
        System.out.println(f==d);//false
        
        float d1 = 213123123f;
        float d2 = d1 + 1;
        
        System.out.println(d1==d2);//true
    }
}

字符拓展

所有的字符的本质还是数字

编码Unicode 2字节 0 - 65536 Excel 2^16=65536

U0000 - UFFFF

public class Demo05{
    public static void main(String[] args){
        char c1 = 'a';
        char c2 = '中';
        
        System.out.println(c1);
        System.out.println((int)c1);//强制转换
        
        System.out.println(c2);
        System.out.println((int)c2);//强制转换
        
        char c3 = '\u0061';
        System.out.println(c3);
    }
}

转义字符

序号 转义字符 含义 ASCII码值(十进制)
1 \a 响铃(BEL) 007
2 \b 退格(BS) ,将当前位置移到前一列 008
3 \f 换页(FF),将当前位置移到下页开头 012
4 \n 换行(LF) ,将当前位置移到下一行开头 010
5 \r 回车(CR) ,将当前位置移到本行开头 013
6 \t 水平制表(HT) (跳到下一个TAB位置) 009
7 \v 垂直制表(VT) 011
8 \ 代表一个反斜线字符"" 092
9 ' 代表一个单引号(撇号)字符 039
10 " 代表一个双引号字符 034
11 ? 代表一个问号 063
12 \0 空字符(NUL) 000
13 \ddd 1到3位八进制数所代表的任意字符 三位八进制
14 \xhh 十六进制所代表的任意字符 十六进制
posted @ 2021-09-23 00:14  写个代码  阅读(24)  评论(0)    收藏  举报