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){
}*/
转义字符
/t 空格,制表符
/n 换行
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧