从头学java

整数不同进制输入

例如

二进制0b、八进制0、十六进制0x(开头)

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

输出的结果分别为10、8、16

浮点数拓展

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

银行业务拓展

用BigDecimal 数学工具类

如果使用double或者float类进行比较可能有以下后果:

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);//输出False
float d1 = 34545133215454f;
float d2 = d1+1;
System.out.println(f==d);//输出True

字符拓展

public class main {
    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);
        //所有的字符本质还是数字
        //编码 Unicode 2字节  65536(长度)
        ///U0000 UFFFF
        char c3 = '\u0061';
        System.out.println(c3);//a

        String sa = new String("hello world");
        String sb = new String("hello world");
        System.out.println(sa==sb);//False,存储的地址不一致
        String sc = "hello world";
        String sd = "hello world";
        System.out.println(sc==sd);//True
    }
}

![好看]( https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2841495475 ,118032052&fm=26&gp=0.jpg)

posted @ 2021-01-19 16:40  小码A  阅读(77)  评论(0)    收藏  举报