首页 > 编程语言 > 详细

JavaSE-数据类型扩展,面试常考

时间:2021-03-08 16:16:49      阅读:38      评论:0      收藏:0      [点我收藏+]

JavaSE-数据类型扩展,面试常考

基本数据类型

数值类型:

整数类型:

        //整数类型扩展:二进制(0b)、八进制(0)、十进制、十六进制(0x00)
       int binary = 0b10 ;//二进制0b
       int octal = 010 ;//八进制0
       int hexadecimal = 0xFF ;//十六进制0xFF,0~9,A~F
       int decimal = 10 ;//十进制
       System.out.println(binary);
       System.out.println(octal);
       System.out.println(hexadecimal);
       System.out.println(decimal);

 

浮点类型:

        //**浮点型扩展:银行业务中钱的表示?
       //最好用BigDecimal 数学工具类
       //float 是长度有限且离散,并由舍入误差,如果超过长度结果就会接近但不等于
       //double
       //最好完全避免使用浮点数进行比较
       float money1 = 0.1f;//结果是0.1
       double money2 = 1.0/10;//结果是0.1
       System.out.println(money1==money2);//结果都是相同的,为什么比较结果是false?????
       System.out.println(money1);
       System.out.println(money2);
       float money3 = 1627362326326372f;//结果是0.1
       float money4 = money3+1;//
       System.out.println(money3==money4);//结果都是不相同的,为什么比较结果是true?????
       System.out.println(money3);
       System.out.println(money4);

 

字符类型

        //字符类型扩展:char 所有的字符本质是数字,字母中文都是数字编码Unicode,2字节,最大值为 65535
       char c1 = ‘a‘;
       char c2 = ‘唐‘;
       char c3 =‘\u0071‘;//字符编码表达
       System.out.println(c1);
       System.out.println(c2);
       System.out.println(c3);
       System.out.println((int)c1);//强制转换为十进制
       System.out.println((int)c2);
       //转义字符   空格:\t   换行:\n
       System.out.println("Hell\tworld!");//\t代表空格
       System.out.println("Hell\nworld!");//\n代表换行

 

布尔类型:

        //布尔型扩展
       String s1 = new String("Hello,world!");
       String s2 = new String("Hello,world!");
       System.out.println(s1==s2);//结果是false,跟内存有关,因为两个对象存放的内存地址不一样??有待解惑,继续深入了解
       String s3 = "Hello,world!";
       String s4 = "Hello,world!";
       System.out.println(s3==s4);//结果是true
       //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       boolean flag = true;
       if(flag==true){ System.out.println("no good");}//新手代码
       if(flag){ System.out.println("good"); }//经验丰富

 

完整代码

public class Demo03 {
   public static void main(String[] args) {
       //***数据类型扩展,面试常考
       //整数类型扩展:二进制(0b)、八进制(0)、十进制、十六进制(0x00)
       int binary = 0b10 ;//二进制0b
       int octal = 010 ;//八进制0
       int hexadecimal = 0xFF ;//十六进制0x,0~9,A~F
       int decimal = 10 ;//十进制
       System.out.println(binary);
       System.out.println(octal);
       System.out.println(hexadecimal);
       System.out.println(decimal);
       System.out.println("/***************************************************************/");
       //************************************************************************************
       //************************************************************************************
       //**浮点型扩展:银行业务中钱表示?
       //会用到BigDecimal 数学工具类
       //float 是长度有限且离散,并由舍入误差,如果超过长度结果就会接近但不等于
       //double
       //最好完全避免使用浮点数进行比较
       float money1 = 0.1f;//结果是0.1
       double money2 = 1.0/10;//结果是0.1
       System.out.println(money1==money2);//结果都是相同的,为什么比较结果是false?????
       System.out.println(money1);
       System.out.println(money2);
       float money3 = 1627362326326372f;//结果是0.1
       float money4 = money3+1;//
       System.out.println(money3==money4);//结果都是不相同的,为什么比较结果是true?????
       System.out.println(money3);
       System.out.println(money4);
       System.out.println("/**************************************************************/");
       //************************************************************************************
       //************************************************************************************
       //字符类型扩展:char 所有的字符本质是数字,字母中文都是数字编码Unicode,2字节,最大值为 65535
       char c1 = ‘a‘;
       char c2 = ‘唐‘;
       char c3 =‘\u0071‘;//字符编码表达
       System.out.println(c1);
       System.out.println(c2);
       System.out.println(c3);
       System.out.println((int)c1);//强制转换为十进制
       System.out.println((int)c2);
       //转义字符   空格:\t   换行:\n
       System.out.println("Hell\tworld!");//\t代表空格
       System.out.println("Hell\nworld!");//\n代表换行
      System.out.println("/****************************************************************/");
       //************************************************************************************
       //************************************************************************************
       //布尔型扩展
       String s1 = new String("Hello,world!");
       String s2 = new String("Hello,world!");
       System.out.println(s1==s2);//结果是false
       String s3 = "Hello,world!";
       String s4 = "Hello,world!";
       System.out.println(s3==s4);//结果是true
       //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       boolean flag = true;
       if(flag==true){ System.out.println("no good");}//新手代码
       if(flag){ System.out.println("good"); }//经验丰富
?
  }
}

 

JavaSE-数据类型扩展,面试常考

原文:https://www.cnblogs.com/tangqiyao11/p/14499742.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!