1、static import(静态导入):
导入静态资源:静态方法和静态字段
格式:import static java.lang.Math.PI;
import static java.lang.Math.*;
2、autoboxing/unboxing(自动装箱和自动拆箱机制):
目的:基本类型与引用类型的转换
例如:Integer a = 3;//自动装箱,实际上是Integer a = new Integer(3)
int b = a;//自动拆箱,实际上是int b = a.intValue()
3、varargs(可变参数):
可变参数的格式:类型 ... 变量名
使用:在方法体内,形参可变参数,将被当成数组使用;
实参的个数,将是形参的可变参数,在方法体内使用的数组的长度;
实参是数组,数组将会被打散;
例如:
- void printInvitation(String name);
- void printInvitation(String name1, String name2);
- void printInvitation(String name1, String name2, String name3);
- 使用可变参数只需一个方法搞定
- void printInvitation(String...names) {
- for (String name : names) {
- //Todo
- }
- }
复制代码
总结 :可变参数只能放置在方法参数列表的最后一位,一个方法中不能具有两个可变参数。
4、generic(泛型):
格式:类型<类型[,类型...]>
泛型使用必须前后相同,泛型是在编译前进行类型约束,在字节码文件中不存在了。
遍历:list,Map
5、enhanced for loop(增强for循环):
格式:for(类型 变量名:集合(Iterable)|数组){}
需要实现Iterable接口的所有的集合,只要能够迭代的所有集合都可以使用增强for循环。
6、typesafe enums(枚举):
枚举也是一个类,枚举的实例对象默认是public static final
枚举构造方法默认是私有的,实例对象名必须放在最前。 |
|