java8种基本数据类型

整数拓展

进制

二进制 0b 十进制 八进制 0 十六进制 0x

看计算机组成原理P25-26

 public class Demo0 {
     public static void main(String[] args){
         int i=1; //十进制
         int i0=01; //八进制
         int i1=0x1; //十六进制
         int i2=0b1; //二进制
         System.out.println(i);
         System.out.println(i0);
         System.out.println(i1);
         System.out.println(i2);
 
    }
 }

 

浮点数拓展

  • 浮点数表示的字长是有限的,也是离散的

  • 存在舍入误差,接近但不等于定义的数

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

  • 银行业务就不用浮点数,而是使用BigDecimal数学工具类来表示数据

     float f1=0.1f;
     double d1=1.0/10;
     System.out.println(f1==d1);//f1是否等于d1,虽然都表示0.1,但结果为false,long类型也要加l/L
     float f2=2323212125425f;
     float f3=f2+1;
     System.out.println(f2==f3);//结果为true
 float f=1.231546f;//float 类型定义要+f或F,因为默认浮点数为double类型
 double d=3.1415926535897932384626433;
 System.out.println(f);
 System.out.println(d);

字符char

 char c='中';
 char c1='1';
 char c0='c';//字符char只能定义一个字或字母或数字
 //所有的字符本质还是数字
 char c2='a';
 char c3='中';
 char c4='\u0061'//结果为a
 System.out.println(c2);
 System.out.println((int)c2);//强制转换为int类型,结果为97,ascii码值
 System.out.println(c3);
 System.out.println((int)c3);//结果为20013

按照unicode表来编码,两个字节,可以表示65536=2^16个字符(现在可以更多),u0000--uFFFF

字符串String

 String s="hello";//String 不是关键字,是一个类
 String s="hello";//String 不是关键字,是一个类
 String s0="hello";
 System.out.println(s==s0);//结果为true
 String s1=new String("hello world");
 String s2=new String("hello world");
 System.out.println(s1==s2); //结果为false,需从内存来解释,这里比较的是内存地址

布尔类型boolean

 boolean flag=true;
 boolean flag0=false;
   boolean flag = true;
     boolean flag0 = false;
   /* if(flag==true){
 
 
 }
     if (flag){
 
     }*/

两个if是一样的

转义字符

/t 空格,制表符

/n 换行

 
posted @   武义一中梁朝伟  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示