java封装类(wrapper类)

一.封装类的构造器:
1.对基本数据类型:Integer i=new Integer(10);

2.对字符型:Integer i=new Integer("10");


二.封装类的3种方法:

1.valueOf();//静态方法,返回的是一个指定类型的封装类实例(目前jdk支持自动装箱与拆箱)
2.***Value();//把封装类对象转化成基本数据类型的值

3.parse***();//把String的对象转化成封装类对象


三.几点补充

1.关于valueOf,例如Integer i=Integer.valueOf("10010")其将字符串转化成Integer类型的对象
2.关于parseInt,例如Integer a=Integer.parseInt("12");
3.关于IntValue,
例如:我们可以使用4种方法创建一个Integer的对象(装箱);
<1>Integer a=new Integer("100");//在cmd命令下编译时提示使用或覆盖了过时的API,但是eclipse就没问题(貌似是系统不推荐用户显式使用)
<2>Integer a=100;//但是实际是调用1的方法
<3>Integer a=Integer.valueOf("100");//调用封装类的方法
<4>Integer a=parseInt("100");


*封装类的另一个的方法:***Value();
例如:
Integer a=100;

int val=a.IntValue();//记得import java.lang.*;(拆箱)


四.其他说明

&关于Integer的对象i的i++操作:
1.先对i拆箱->val=i.intValue();
2.再实现val的自加->val++;
3.再装箱->i=new Integer(val)




&关于常量池的概念
如果有:
Integer a=new integer(50);//a=50;
Integer b=new Integer(50);//b=50;
System.out.println(a==b);


输出:
True


按照常理来说a、b都用了new,应该占用不同的内存单元,但是常量池(-128~127)的存在是的a、b同指向池中的同一单元

//Wrapper
import java.lang.*;
public class Main {
	public static void main(String args[]) {
		int a=1;
		//Integer b = new Integer(a);
		Integer c = Integer.valueOf(a);//valueOf()将基本数据类型转化为封装类
		Integer d = Integer.parseInt("1");
		int e = c.intValue();
		System.out.println(e);
	}
}


  • 8
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水能zai舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值