包装类

 八种基本数据类型的包装类

byte ——Byte

short ——Short

int ——Integer

long-----Long

float-----Float

double----Double 

char----Character

boolean---Boolean


自动装箱拆箱

  • 自动装箱

    ​Integer i=15;

  • 自动拆箱

    ​int i=new Integer(15);

    引用数据类型是不能赋值给基本类型的,这里是自动拆箱的机制

int a1=1;           Integer b1=1;          a1==b1 true

int a2=333;        Integer b2=333;       a2==b2 ture

Integer a3=1;    Integerb3=1;          a3==b3 ture

Integer a4=333; Integerb4=333;       a4==b4 false

Java自动拆箱和装箱。在自动装箱时,把int变成Integer的时候是有规则的,当你的int的值在

-128-IntegerCache.high(127) 时,返回的不是一个新new出来的Integer对象,而是一个已经缓存在堆 中的Integer对象,(我们可以这样理解,系统已经把-128到127之 间的Integer缓存到一个Integer数组中去了,如果你要把一个int变成一个Integer对象,首先去缓存中找,找到的话直接返回引用给你就 行了,不必再新new一个),如果不在-128-IntegerCache.high(127) 时会返回一个新new出来的Integer对象。

 

Integer a1=new Integer(5);

Integer a2=new Integer(5);

a1==a2            false  new两个对象

Integer a1= Integer.valueOf(5);

Integer a2= Integer.valueOf(5);

a1==a2            true      装箱

Integer a1= Integer.valueOf(333);

Integer a2= Integer.valueOf(333);

a1==a2            false

 

  • int-->String

    ​1.String s=i+””;

    ​2.String s=Integer.toString(i);

    ​3.String s=String.valueOf(i);

  • String-->int

    ​1.int i=new Integer(s);    通过包裹类的构造方法

    ​2.int i=Integer.parseInt(s);

    ​3.int i=Integer.valueOf(s);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值