5.4对象包装器与自动装箱器

有时,需要将基本数据类型转换为对象。所有的基本类型都有一个与之对应的类。通常,这些类被称为包装器

包装类 基本数据类型
Interger int
Long long
Float float
Double double
Short short
Byte byte
Character char
Void void
Boolean boolean
  • 如果想定义已给整型数组列表,但是尖括号中的类型参数不允许是基本类型,即不允许写成ArrayList<int>,这时,需要写成:
ArrayList<Integer> list = new ArrayList();

如果这时调用:

list.add(3);

编译器会把这条语句自动变成:

list.add(Integer.valueOf(3));

如果这时调用:

int n = list.get(i);

编译器会把这条语句自动变成:

int n = list.get(i).intValue();

在算术表达式中也能够自动装箱和拆箱,例如:编译器会自动插入一条对象拆箱的指令,然后进行自增计算,最后再将结果装箱。

Integer n = 3;
n++;

在两个包装器比较时调用equals方法
如果在一个条件表达式中混用integer和double类型,integer值就会拆箱提升为double,在装箱为Double
要想将字符串转换为整型,可以使用:

int x=Intege.parsInt(s);

int intValue()
int的形式返回Integer对象的值
static String toString(int i,int radix)
换回数值i的基于给定radi参数进制的表示
static int parseInt(String s)
static int parseInt(String s,Int radix)
返回字符串s表示的整型数值,给定字符串表示的时十进制整数,或者时radix参数进制的整数
static Integer valueOf(String s)
static Integer valueOf(String s,Int radix)
返回字符串s表示的整型数值进行初始后的一个新的Integer对象,给定字符串表示的时十进制整数,或者时radix参数进制的整数

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容