JDK5 与 JDK6 不同点
1. 泛型
2. 自动装箱/拆箱
3. for-each
4. static import
5. 可变参数
6. 枚举
1. 泛型
1.4之前 java util包中容器类,装的是Object对象,你要装特定的类型可以,但要强制转换,这可能导致运行时错误.
例:原来ArrayList list=new ArrayList();
list.add(new Integer(3));
list.add(new Integer(4));
int i=((Integer)(list.get(0))).parseInt();
很麻烦
现在ArrayList <Integer> list=new ArrayList <Integer> ();
list.add(new Integer(3));
list.add(new Integer(4));
int i=list.get(0).parseInt();
不用Cast,运行时错误变为编译时错误,这是进步.
2 .自动装箱/拆箱
还是刚才例子
最后一句可改为
int i=list.get(0);
原始类型与对应的包装类不用显式转换,方便
3. for-each
循环的增强
int a[]={……..};//初始化,略
for(int i:a)
{
……
}
不用以前的i=0;i <a.length;i++
4. static import
以前调Java.math
Math.sqrt();
现在 static import java.lang.Math.sqrt;
再 sqrt();
相当于你自己类里有这个方法
5 可变参数
可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是函数声明中的最后一个参数。
int sum(int …intlist)
{
int i,sum;
sum=0;
for(int i=0;i <intlist.length;i++)
{
sum+=list[i];
}
return sum;
}
有任意个参数,把他看作数组
6.枚举
JDK1.5加入了一个全新类型的“类”-枚举类型。为此JDK1.5引入了一个新关键字enmu. 我们可以这样来定义一个枚举类型。
public enum Color
{
Red,
White,
Blue
}
然后可以这样来使用Color myColor = Color.Red.
枚举类型还提供了两个有用的静态方法values()和valueOf().
浙公网安备 33010602011771号