---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
10.1. 自动装箱与拆箱
自动装箱:
Integer i = 1;
自动拆箱:
System.out.println(i+2);
享元模式:
Integer a1 = 137;
Integer a2 = 137;
a1==a2 为false,当在-128—127范围以内时,结果为true
10.2. 枚举
枚举相当于类,有构造方法、成员变量、普通方法和抽象方法
枚举元素必须在最前方
枚举只有一个成员时,可以作为单实例的实现方式
枚举的构造方法必须为私有
举例:
<span style="white-space:pre"> </span>publicenum Weekdays{
SUN(1),MON(),TUE,WES,THR,FRI,SAT
privateWeekdays(){}
private Weekdays(int i){}
}
10.3. 泛型
具体参见8.5节(黑马程序员——集合),泛型的具体介绍
10.4. 增强的for循环
增强for循环通常应用在集合中,集合通常都用Iterator进行遍历
<span style="white-space:pre"> </span>Iteratorit = list.iterator()
while(it.hasNext()){
it.next();
}
增强for循环可以简化书写
<span style="white-space:pre"> </span>for(Strings:list){
System.out.println(s);
}
与普通for循环的区别:
不能对遍历的元素进行操作
<span style="white-space:pre"> </span>for(String s:list){
s.remove();//这个执行不可以
}
10.5. 静态导入
Importstatic java.lang.System.out;//导入java.lang包下的System类的静态方法out,在程序中可以直接写out.print();来替代System.out.println()
普通导入和静态导入的区别:
普通导入:一般导入的是类文件,如java.util.Scanner,后者是导入类里面的静态方法,或者只导入一个静态方法,在程序应用时简化书写。
10.6. 可变参数
可变参数适用于参数个数不确定,单数参数类型确定的情况,java中将可变参数当做数组来进行处理。
原则:
可变参数应该位于最后一项,否则,当参数后面出现了不同的类型时,java无法区分传入的参数属于前一个可变参数;还是后面的参数。
…位于变量类型和变量名之间,前后有无空格都可以
调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
实例:
public classTransPara {
public static voidmain(String[] args) {
print("abc",1,2,3,4,5);
}
public static voidprint(String str,int ...in){
System.out.println(str);
for(inti=0;i<in.length;i++){
System.out.println(in[i]);
}
}
}
---------------------- ASP.Net+Unity开发、 .Net培训、期待与您交流! ----------------------详细请查看: www.itheima.com