Java中的~基本类型包装类

今天我们来一起聊聊基本类型的包装类

我们在学习 Java 的时候有了解

Java有四类八种基本数据类型

这些基本数据类型都有对应的包装类


基本类型的包装类


基本类型包装类的概述

将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据。

常用的操作之一:用于基本数据类型与字符串之间的转换。


基本数据类型与包装类的对应关系

byte → Byte

short Short

int Integer

long  Long

float Float

double Double

char Character

boolean Boolean


Integer类的概述

Integer 类在对象中包装了一个基本类型 int 的值,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法(这八个类都差不多咱们就分享一个,剩下的自己去查API哈~~)


Integer构造方法

public Integer(int value)

构造一个新分配的 Integer 对象,它表示指定的 int 值。

public Integer(String s)

构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。


640?wx_fmt=png


String和int类型的相互转换

1)int -- String

a:和""进行拼接

b:public static String valueOf(int i)


640?wx_fmt=png

不止这两种

这是常用的两种方式~~


2)String -- int

a:String -- Integer -- int

b:public static int parseInt(String s)


640?wx_fmt=png


JDK5的新特性自动装箱和拆箱

自动装箱:

把基本类型转换为包装类类型

自动拆箱:

把包装类类型转换为基本类型


640?wx_fmt=png


注意:在使用时,Integer  x = null;代码就会出现NullPointerException。

建议先判断是否为null,然后再使用。


Integer的面试题

看看下面的代码:

Integer i1 = 97;

Integer i2 = 97;

System.out.println(i1 == i2);

System.out.println(i1.equals(i2));

System.out.println("-----------");


Integer i3 = 197;

Integer i4 = 197;

System.out.println(i3 == i4);

System.out.println(i3.equals(i4));

你觉得答案是什么~

我们来运行一下~


640?wx_fmt=png

答案和你想的是一样的吗?


因为-128~127是byte的取值范围,如果在这个取值范围内,自动装箱就不会创建新的对象,而是从常量池中获取,超过了byte取值范围就会再创建新对象~这个就是 i1==i2 的结果为 true 的原因了(感兴趣的小伙伴可以去查看一下源码呦~)



原文:Java联盟

版权声明:文章来源网络,版权归作者本人所有,如侵犯到原作者权益,请与我们联系删除或授权事宜。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值