Java你不知道的包装类

发表于:2012-11-21 10:08

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:a542214712    来源:51Testing软件测试网采编

  在JAVA程序设计中经常用到一系列类型 ,如int  char double 等,可以把他们想像成“基本”类型。

  它们显然要特殊对待,因为new将对象存在“堆”里,然而像byte,char这些特别小的,简单的变量,放在堆中不是特别有效率。

  对于基本类型的处理,java采取与C和C++相同的方法。也就是,不用new来创建变量 ,而是创建一个并非是引用 的“自动”变量。这个变量直接存储“值”到栈中,因此更加高效。

  然而因为基本类型不是从JAVA对象中派生出来的,许多操作完成不了

  如:基本数据类型之间的相互转换不是都可以制动转换的而你强制转换又会出问题,比如String类型的转换为int 类型的 那么jdk为了方便用户就提供了相应的包装类

int a=0;
String result=Integer.toString(a);

  java包装类使用起来非常灵活

char c ='x';
Character ch=new Character(c);

  也可以这样用

<Character ch=new  Character('x');
并可以反向转换:
char c=ch

  例2: 第二 有时候一个函数需要传递一个Object的变量而你想传递int类型的进去显然不行,怎么办呢,用到了包装类

public void test(Object obj){
}

  你想传递5进去就可以这样

test(new Integer(5));

  综上所述,包装类有两个用法:一个实现基本类型之间的转换;二是便于函数传值。就是在一些地方要用到Object的时候方便将基本数据类型装换。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号