JAVA的包装类 http://blog.csdn.net/hjf19790118/article/details/7081925
来源:互联网 发布:网络博客大全评级 编辑:程序博客网 时间:2024/06/11 21:51
JAVA的包装类 【转】
包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:
包装类对应表
基本数据类型
包装类
byte
Byte
boolean
Boolean
short
Short
char
Character
int
Integer
long
Long
float
Float
double
Double
在这八个类名中,除了Integer和Character类以后,其它六个类的类名和基本数据类型一直,只是类名的第一个字母大写即可。
对于包装类说,这些类的用途主要包含两种:
a、作为和基本数据类型对应的类类型存在,方便涉及到对象的操作。
b、包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。
由于八个包装类的使用比较类似,下面以最常用的Integer类为例子介绍包装类的实际使用。
1、实现int和Integer类之间的转换
在实际转换时,使用Integer类的构造方法和Integer类内部的intValue方法实现这些类型之间的相互转换,实现的代码如下:
int n = 10;
Integer in = new Integer(100);
//将int类型转换为Integer类型
Integer in1 = new Integer(n);
//将Integer类型的对象转换为int类型
int m = in.intValue();
2、Integer类内部的常用方法
在Integer类内部包含了一些和int操作有关的方法,下面介绍一些比较常用的方法:
a、parseInt方法
public static int parseInt(String s)
该方法的作用是将数字字符串转换为int数值。在以后的界面编程中,将字符串转换为对应的int数字是一种比较常见的操作。使用示例如下:
String s = “123”;
int n = Integer.parseInt(s);
则int变量n的值是123,该方法实际上实现了字符串和int之间的转换,如果字符串都包含的不是都是数字字符,则程序执行将出现异常。(说明:异常的概念将在下一章进行讲述)
另外一个parseInt方法:
public static int parseInt(String s, int radix)
则实现将字符串按照参数radix指定的进制转换为int,使用示例如下:
//将字符串”120”按照十进制转换为int,则结果为120
int n = Integer.parseInt(“120”,10);
//将字符串”12”按照十六进制转换为int,则结果为18
int n = Integer.parseInt(“12”,16);
//将字符串”ff”按照十六进制转换为int,则结果为255
int n = Integer.parseInt(“ff”,16);
这样可以实现更灵活的转换。
b、toString方法
public static String toString(int i)
该方法的作用是将int类型转换为对应的String类型。
使用示例代码如下:
int m = 1000;
String s = Integer.toString(m);
则字符串s的值是”1000”。
另外一个toString方法则实现将int值转换为特定进制的字符串:
public static int parseInt(String s, int radix)
使用示例代码如下:
int m = 20;
String s = Integer.toString(m);
则字符串s的值是”14”。
其实,JDK自从1.5(5.0)版本以后,就引入了自动拆装箱的语法,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行,这将大大方便程序员的代码书写。使用示例代码如下:
//int类型会自动转换为Integer类型
int m = 12;
Integer in = m;
//Integer类型会自动转换为int类型
int n = in;
所以在实际使用时的类型转换将变得很简单,系统将自动实现对应的转换。
- JAVA的包装类 http://blog.csdn.net/hjf19790118/article/details/7081925
- Java学习笔记(类的可见性) http://blog.csdn.net/hawksoft/article/details/8453637
- java http://blog.csdn.net/wike163/article/details/6635321
- Java的XML创建、解析文档(转载自http://blog.csdn.net/psyuhen/article/details/7539228)
- Java程序和C程序的相互调用http://blog.csdn.net/yasi_xi/article/details/8437628
- java中接口的定义与实现 http://blog.csdn.net/yjkwf/article/details/7238847
- Java泛型的类型擦除 http://blog.csdn.net/hust_is_lcd/article/details/7875386
- java system.out.printf()的使用方法 http://blog.csdn.net/wangchangshuai0010/article/details/8647503
- 微信的平台搭建java http://blog.csdn.net/gebitan505/article/details/44595265
- Java中Synchronized的用法(原文: http://blog.csdn.net/luoweifu/article/details/46613015 )
- Java classpath的作用 http://m.blog.csdn.net/article/details?id=43155707
- Java中Array Arrays ArrayList的区别 http://blog.csdn.net/karizhang/article/details/17116627
- c++ 返回值为 类的对象 http://blog.csdn.net/zyearn/article/details/9709041
- 类模版的分离编译问题 http://blog.csdn.net/woshishuizzz/article/details/8648440
- C++类的保护成员学习笔记 http://blog.csdn.net/qhs1573/article/details/14109463
- python的类变量和实例变量 http://blog.csdn.net/chenggong2dm/article/details/9030481
- 类模板的定义和使用 http://blog.csdn.net/djinglan/article/details/6689839
- PrintStream: - shichunle的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/shichunle/article/details/6754930
- 相对误差的传递
- TCP/IP基础(二)
- PHP实现冒泡、选择、插入和快速排序
- gravity 与layout_gravity的区别
- POJ 2778 DNA Sequence 题解&代码
- JAVA的包装类 http://blog.csdn.net/hjf19790118/article/details/7081925
- 节点动作
- zzulioj 1730: 通信基站 (全排列&DFS)好题
- 安卓开发中SQLite的使用
- PB中TreeView控件使用技巧
- 【ASP.NET】六大内置对象
- 【CodeForces】A. I Wanna Be the Guy
- HTTP状态码大全
- Can not find the tag library descriptor for "/struts-tags"`