J2SE5新增的几个新特性(一)
最近看第四版的《Thinking In Java》看到的J2SE5新增加的几个属性,感觉还是挺好玩的
1:自动包装
对于基本数据类型的的char,short ,int ,long double自动包装成对应的类Character,Short,Integer,Long,Double,省去了以前的手动转化
2:for -each语句的使用
for(Object object :array) 就是按照数组array的顺序依次赋值给object(相当于以前的循环控制变量i,跟循环数值的一个结合),接下来就 可以跟以前一样操作数组的各个成员了
3:可变参数列表
形式参数采用name(Object[] ... ojbect)形式,实际参数可以采用数组形式,当然也可以不采用数组形式
public class Main {
public static void main(String[] args) {
f(new Integer(1),3,90);
}
public static void f(Integer...integers){
for(Integer integer:integers){
System.out.println(integer);
}
}
}
4:枚举类型enum的使用
public enum SP{
NOT,MTLD,HELLO
}
每个枚举类型类型必须写在自己的文件中
for(SP sp:SP.values()){
System.out.println(sp+" "+sp.ordinal());
}
可以在switch中使用
public static void s(SP sp){
switch(sp){
case MTLD:
break;
}
}
case的项只能写成MTLD或者NOT之类的形式,不能写成SP.MTLD或者sp.MTLD的形式,否则会报The enum constant SP.MTLD reference cannot be qualified in a case label这样的错误,真是奇怪啊