一、Collections.emptyList()的源码:
public static final <T> List<T> emptyList() {
return (List<T>) EMPTY_LIST;
}
Collections.EMPTY_LIST的源码:
public static final List EMPTY_LIST = new EmptyList();
可以看出emptyList() 是返回一个泛型的空集合,而EMPTY_LIST只返回一个空集合,emptyList()还是通过EMPTY_LIST实现 返回的。
二、在使用过程中,编译器只会提示警告信息,不会报错
三、两者都不能添加元素
总之两者除了在编译期间 警告外没什么区别。