1.myeclipse模板代码配置
window->preferences
2 jdk 5.0静态导入
import语句可以导入一个类或某个包中的所有类
import static语句导入一个类中的某个静态方法或所有静态方法
语法举例:
import static java.lang.Math.sin;
import static java.lang.Math.*;
3 增强for循环和可变参数
问题:一个方法接受的参数个数不固定,例如:
System.out.println(countScore(2,3,5));
System.out.println(countScore(1,2,3,5));
可变参数的特点:
只能出现在参数列表的最后;这个要记住
...位于变量类型和变量名之间,前后有无空格都可以;调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。
语法:for ( type 变量名:集合变量名 ) { … }
注意事项:
- 迭代变量必须在( )中定义!
- 集合变量可以是数组或实现了Iterable接口的集合类
举例:
public static int add(int x,int ...args) {
int sum = x;
for(int arg:args) {
sum += arg;
}
return sum;
}
4.自动拆装箱与享元模式(jdk5.0中)
自动装箱:Integer num1 = 12;
自动拆箱:System.out.println(num1 + 12);
基本数据类型的对象缓存:
Integer num1 = 12;
Integer num2 = 12; 这块相等,-128<=num<=127都是真的(这里用了享元模式 flyweight)
System.out.println(num1 == num2);
Integer num3 = 129; 这块不相等,因为是对象
Integer num4 = 129;
System.out.println(num3 == num4);//false
Integer num5 = Integer.valueOf(12);
Integer num6 = Integer.valueOf(12) ;
System.out.println(num5 == num6);//true
PS:在String类中也采用了享元设计模式:String s1="abc" ; String s2="abc"; 也采用了享元设计模式 s1和s2两个不同引用变量指向了同一对象。