java语言中的8中基本类型_Java基础——八大基本数据类型

基本类型,或者叫做内置类型,是Java中不同于类(Class)的特殊类型。

Java是一种强类型语言,第一次申明变量必须说明数据类型。

位(bit) 计算机最小存储单位,存储内容总是0和1。(8bits=1byte,bit不能作为最小寻址单位)。

字节(byte)可以存储所有ASCII所有字符(这是它包含8bits的初衷),-2的8次方到2的8次方-1(-128-127),最小寻址单位。java中内置基础数据类型是字节。

字符型

char(2字节16位 )

数值类型

整型

byte(1字节8位)

short(2字节16位)

int(4字节 32位)

long (8字节 64位)

浮点数类型

float (4字节 32位)

double (8字节 64位)

布尔类型

boolean (1/8字节1位)

实际上,Java中还存在另外一种基本类型void,它也有对应的包装类java.lang.Void,不过我们无法直接对它们进行操作。

包装类(包装类均位于java.lang包)

在这八个类名中,除了Integer和Character类以后,其它六个类的类名和基本数据类型一致,只是类名的第一个字母大写即可。

包装类型和基础类型转换

jdk1.5后,自动拆装箱

Integer a = 5;//自动装箱

int b = a;//自动拆箱

为什么使用包装类型?

因为Java是一种面向对象语言,很多地方都需要使用对象而不是基本数据类型。比如,在集合类中,我们是无法将int 、double等类型放进去的。因为集合的容器要求元素是Object类型。为了让基本类型也具有对象的特征,就出现了包装类型,它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。

整型缓存池

new Integer(123); 每次调用会返回一个新对象。

Integer.ValueOf(123); 会使用缓存池,多次调用返回同一个对象引用。

注意:自动装箱使用的Integer.ValueOf(123)。另外整型缓存池范围默认是1byte的范围,也就是超过这个范围是不存缓存池是new的。

6932232f0f9dfe3cfd67cc86dcb3e611.png

(IntegerCache.high=127,IntegerCache.low=-128)

Integer a = 5;//自动装箱

int b = a;//自动拆箱

Integer c = new Integer(5);

Integer d= new Integer(5);

Integer e= Integer.valueOf(5);

Integer f= Integer.valueOf(5);

Integer g= Integer.valueOf(129);

Integer h= Integer.valueOf(129);//a相当于e和f取值于缓存池,而c和d都是创建新对象//g,h 超过了整型缓存池范围

System.out.println(a==c);//false

System.out.println(a==e);//true

System.out.println(c==d);//false

System.out.println(c==e);//false

System.out.println(e==f);//true

System.out.println(g==h);//false

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值