JDK1.5新特性

静态导入

import static java.util.Collections.*;
import static java.lang.System.out;

1.如果静态导入的成员与本类的成员存在同名的情况下,那么默认使用本类的静态成员,如果需要指定使用静态导入的成员,那么需要在静态成员前面加上类名。

2.如果本类的方法和静态导入的方法参数不一致,会报错。

增强for循环

只能用在是实现了Iterable的对象使用。使用增强for循环时不能更改数组长度。

泛型

泛型作用

提供编译时异常检查,避免频繁的类型转换。

泛型擦除

public void save(List<Person> p){
    }
    public void save(List<Dept> d){    
    }

 可变参数列

格式

    public static void add(int... arr)

1. 如果一个函数 的形参使用上了可变参数之后,那么调用该方法的时候可以传递参数也可以不传递参数。
2. 可变参数实际上是一个数组对象。
3. 可变参数必须位于形参中的最后一个参数。
4. 一个函数最多只能有一个可变 参数,因为可变参数要位于形参中最后一个位置上。

自动装箱/拆箱

        Integer e = 128;
        Integer c = new Integer(13);
        int d = c; 
        Integer e = 128;
        Integer f = 128; 
        System.out.println("同一个对象吗?"+(e==f)); // false 
如果-128~127,结果为true,其他为false。Integer类内部维护了缓冲数组,该缓冲数组存储的-128~127 这些数据在一个数组中。如果你获取的数据是落入到这个范围之内的,那么就直接从该缓冲区中获取对应的数据。
原文地址:https://www.cnblogs.com/juaner767/p/5631308.html