day08-数据类型拓展及面试题

数据类型拓展及面试题

  • 整数拓展----进制

     //整数拓展----进制
         int i=10;//十进制   不能以0开头,0~9
         int i1=0b11;//二进制:0b+数字
         int i2=010;//八进制:0+数字
         int i3=0x10;//十六进制:0x+数字   0~9,A~F
         System.out.println(i1);
         System.out.println(i2);
         System.out.println(i3);
         System.out.println("======================================");
         //==========================================================

 

  • 浮点数拓展

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

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

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

    • 重要的事情说三遍

         //浮点数拓展
             //BigDecimal类 数学工具类     若需要进行计算且不能有误差
             //==========================================================
             //float:有限 离散 舍入误差   大约   接近但不等于
             //double:
     
             //最好完全避免使用浮点数进行比较
             //最好完全避免使用浮点数进行比较
             //最好完全避免使用浮点数进行比较
     
             float f=0.1f;//0.1
             double d=1.0/10;//0.1
             System.out.println(f);//0.1
             System.out.println(d);//0.1
             System.out.println(f==d);//false
     
             float a1=231231231231f;
             float a2=a1+1;
             System.out.println(a1==a2);//true

     

  • 字符拓展

    • 范围:0到65535。它不过对应的是unicode的编码值,即全球语言统一编码。

      \u开头的是一个Unicode码的字符,每一个'\u0000'都代表了一个空格。

      通常中文在的显示都是被转化为Unicode显示的。

      Unicode可同时包含65536个字符,ASCII/ANSI只包含255个字符,实际上是Unicode的一个子集。Unicode字符通常用十六进制编码方案表示,范围在'\u0000'到'\uFFFF'之间。\u0000到\u00FF表示ASCII/ANSI字符。\u表示这是一个Unicode值。

         //字符拓展
             //==========================================================
             System.out.println("======================================");
             char c1='a';
             char c2='中';
             char c3='A';
             System.out.println(c1);
     
             System.out.println((int)c1);//强制类型转换
     
             System.out.println(c2);
     
             System.out.println((int)c2);//强制类型转换
     
             System.out.println(c3);
     
             System.out.println((int)c3);//强制类型转换
     
             //所有字符本质还是数字
             
             char c4='\u0061';
             System.out.println(c4);//a

     

  • 转义字符

     //转义字符
         // \t 制表符
         // \n 换行符
         //......
         System.out.println("hello\tworld!");//hello   world
         System.out.println("hello\nworld!");//hello
                                             //world!
 
         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){}//新手
         if (flag){}//老手
         //less is more! 代码要精简易读!

 

 

 

 

posted @   小璐_哈基米  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示