Java八种基本类型总结

在Java中有八种基本数据类型,它们和对象不同,是在栈中直接存放数据,并且可以就行比较。


布尔型:

boolean 取值范围:true、false 默认值:false


字符型:(默认值是‘\u0000’) 四位表示法 每一位表示一个16进制数,所以共16位 2个字节

char 占两个字节 以Unicode方式存储,可以保存全世界任何字符

因此两个字节的char值本质上存储的是Unicode码,所以对char变量进行赋值就有三种方式:

char c='q';
System.out.println(c);
c='\u0071';
System.out.println(c);
c=0x71;
System.out.println(c);
这三种方式效果一样,注意当为char赋值为整数时,可以是十进制、八进制或者十六进制,然后换算结果为十六进制得出的对应字符就是char会输出的字符
当用十进制整数赋值时,最大值为65535,如果赋值65536,就会编译报错,整数无法转化为字符,原因就是在Unicode中65536没有对应的字符

报的错误:cannot convert from int to char


整数型:(默认值都是0)

byte 一个字节 8位 

short 两个字节 16位

int    四个字节 32位

long  八个字节 64位


浮点型:(默认值是0.0)

float 四个字节 32位

double 八个字节 64位


在给基本数据类型赋值时,如果超出可接受范围,就会编译报错。这也是Java能写出健壮程序的原因,很多错误在编译时期就提醒程序员解决。


//1.我们可以这样理解,在基本数据类型转换过程中,由于Boolean类型特殊,所以不参与转换
		//2.其他七种基本类型,byte--short--int--long--float--double可以从小到大自动转换
		//3.char就比较特殊,因为char没有负数,所以byte和short无法自动转换为char,只能强制类型转换,否则会报错
		//4.从大到小转换只能强制类型转换,这样可能会丢失精度,所以如果不强制只能报错
		//5.但是如果右边赋值的是具体的值,而不是变量,那么就会根据范围进行判断,如果范围允许,则不报错,否则就会报错
		//6.当范围不允许导致报错时,我们如果对其强制类型转换,则编译不会报错,但这样可能会丢失精度
		//7.而且赋值的时候,整数默认是int,如果超出int类型范围,必须显式声明为long,也就是后面加上l或者L
		//8.同理,浮点型默认是double,如果要使用float,则在后面加上f或者F,如果不加就会立即报错,因为浮点型即使0.0float和double也不一样



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值