1.自动装箱拆箱
1.1.java中数据类型分为两种:
基本数据类型
引用数据类型(对象)
1.2.转换基本形式
基本---引用 Integer x = new Integer(x);
引用---基本 int num = x.intValue();
1.3.自动装箱拆箱
为了优化使用数据,虚拟机为包装类提供了缓冲池,
Integer池的取值大小为:-128~127;
Java为了优化字符串操作,提供了一个String缓冲池;
示例:
public class AutoBox {
/**
* @param args
*/
public static void main(String[] args) {
// 装箱
Integer iObj=3;
//拆箱
System.out.println(iObj+12);
// String s1=new String("abc");
String s1="abc";
//限于-128~127,使用频繁的Int数建立享元模式;
Integer i1=137;
Integer i2=137;
System.out.println(i1==i2);
Integer i3=Integer.valueOf(213);
Integer i4=Integer.valueOf(213);
System.out.println(i3==i4);
}
2.享元模式Flyweight Pattern:
把大量小物件相同的属性包装起来,视为享元内部状态,不同的属性视为外部状态;享元模式在编辑器系统中大量使用.
特点:避免对象频繁消耗内存;