10 数据类型扩展及面试题讲解

10 数据类型扩展及面试题讲解

 

public class fan02 {
   public static void main(String[] args) {
       //整数拓展:进制 二进制0b 十进制 八进制0 十六进制0x
       int i=10;
       int i2=010;
       int i3=0x10;
       System.out.println(i);//10
       System.out.println(i2);//8
       System.out.println(i3);//16
       System.out.println("=============================================");

       //浮点数拓展,银行业务怎么表示?
       //使用BigDecimal 数学工具类
       //===================
       //最好完全避免使用浮点数进行比较
       //最好完全避免使用浮点数进行比较
       //最好完全避免使用浮点数进行比较

       float fdo=0.1f;
       double ads=1.0/10;
       System.out.println(fdo==ads);//false 本来是正确却输出错误 所以最好完全避免使用浮点数进行比较
       float ee=6536349727f;
       float rr=ee+1;
       System.out.println(ee==rr);//true 本来应输出错误,结果输出正确 ,所以最好完全避免使用浮点数进行比较

       System.out.println("=============================================");
       //字符拓展
       char c1='a';
       char c2='中';
       System.out.println(c1);
       System.out.println((int)c1);//强制转换
       System.out.println(c2);
       System.out.println((int)c2);//强制转换
       //所有的字符本质还是数字
       //编码 Unicode (表:如97表示a)   2个字节 65536 Excel 2 16=65536
       char c3='\u0061';
       System.out.println(c3);//a
       //转义字符
       // \t 制表符
       // \n   换行
       System.out.println("Hello\tWorld");// \t转义成了空格
       System.out.println("Hello\nWorld");//   \n转义将两个单词换行

       System.out.println("=============================================");
       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
       //对象 从内存分析

       //布尔值扩展
       boolean flag=true;
       if(flag==true){};//新手
       if(flag){};//老手
       //Less is More! 代码要精简易读

  }
}

 

posted @ 2021-11-24 20:45  我奖金没了  阅读(11)  评论(0编辑  收藏  举报