一:包装类的分类 Wapper
1、针对八种基本数据类型相应的引用类型 —— 包装类。
2、有了类的特点,就可以调用类中的方法。

二:八种类型的关系图:
Boolen

Character

Btye,Interger,Short,Long,Float,Double。

三(1):包装类和基本数据的转换:
演示 包装类 和 基本数据类型的相互转换,这里以 int 和 Integer 为例。
1)jdk5 前的手动装箱和拆箱方式,装箱: 基本类型 -> 包装类型 -> ,反之,拆箱。
2)jdk5 后的自动拆箱和装箱方式
3)自动装箱底层调用的是 valueOf 方法,比如Integer。valueOf()
4)其他包装类的用法类似,不一一举例。
public class WrapperType {
public static void main(String[] args) {
int n1 = 10;
//jdk5 以前的装箱
Integer integer = new Integer(n1);
//or
Integer integer1 = Integer.valueOf(n1);
//jdk5 以前的拆箱
int n = integer.intValue();
//jdk5 以后的装箱
Integer integer2 = n1; // 底层使用的是 Integer.valueOf(n1)
// 拆箱
n1 = integer2; // 底层是 intValue() 方法
}
}
练习题 :输出结果。
Object obj = true?new Integer(1):new Double(2.0);
System.out.println(obj);
答案为 :1.0 。自己思考为什么
三(2):包装类和String类型的转换:
这里只演示Integer 与 String 的转换

四:包装类的常用方法:
这里用 Integer 与 Character 的常用方法演示

五:Integer创建机制:
首先来看 valueOf 方法,如果 i 在 low 到 high 之间,是从数组里返回一个数,而不是创建一个新的对象,在这个范围外,才返回一个新的对象。 而这个范围是 -128 到 127.

看看下面的代码输出什么?

答案是 false true false

答案是 true true
注意:只要有基本数据类型,判断的是值是否相等。
1045

被折叠的 条评论
为什么被折叠?



