jialisoftw

JAVA你不知道的包装类

在JAVA程序设计中经常用到一系列类型 ,如int  char double 等,可以把他们想像成“基本”类型。
它们显然要特殊对待,因为new将对象存在“堆”里,然而像byte,char这些特别小的,简单的变量,放在堆中不是特别有效率
 
对于基本类型的处理,java采取与C和C++相同的方法。也就是,不用new来创建变量 ,而是创建一个并非是引用 的“自动”变量。这个变量直接存储“值”到栈中,因此更加高效。
 
然而因为基本类型不是从JAVA对象中派生出来的 ,许多操作完成不了
 
如:基本数据类型之间的相互转换不是都可以制动转换的 而你强制转换又会出问题,比如String类型的转换为int 类型的 那么jdk为了方便用户就提供了相应的包装类
 
[java] view plaincopy
  1. <span style="font-size:18px;">int a=0;  
  2. String result=Integer.toString(a);</span>  
java包装类使用起来非常灵活
  1. <span style="font-size:18px;">char c ='x';  
  2. Character ch=new Character(c);</span>  
也可以这样用
  1. <span style="font-size:18px;">Character ch=new  Character('x');  
  2. 并可以反向转换:  
  3. char c=ch;</span>  
例2:
第二 有时候一个函数需要传递一个Object的变量 而你想传递int类型的进去显然不行,怎么办呢,用到了包装类 
  1. <span style="font-size:18px;">public void test(Object obj){  
  2. }</span>  
你想传递5进去就可以这样
test(new Integer(5)); 
综上所述,包装类有两个用法 一个实现基本类型之间的转换 二是便于函数传值 就是在一些地方要用到Object的时候方便将基本数据类型装换
原文地址:
http://www.software8.co/wzjs/java/1347.html

posted on 2012-11-19 09:57 飞猪一号 阅读(1287) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2012年11月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

统计

常用链接

留言簿

随笔档案

友情链接

搜索

最新评论

阅读排行榜

评论排行榜