importjava.util.Collections;importjava.util.List;publicclassEmptyListDemo{publicstaticvoidmain(String[]args){List<String>emptyList=getEmptyList();System.out.println("Empty List: "+emptyList);}publicstaticList<String>getEmptyList(){returnCollections.emptyList();}} 1. 2. 3. 4. 5. 6. 7. 8....
下面是一个示例代码,展示了如何实现返回一个空集合的方法。 importjava.util.ArrayList;importjava.util.List;publicclassExample{publicstaticList<String>getEmptyList(){List<String>emptyList=newArrayList<>();returnemptyList;}publicstaticvoidmain(String[]args){List<String>myList=getEmptyList();System.out.pr...
return (List) EMPTY_LIST; } 我们看到EMPTY_LIST 是Collections类的一个静态常量,而emptyList是支持泛型的。若是不需要泛型的地方可以直接使用 EMPTY_LIST ,若是需要泛型的地方就需要使用emptyList。 通过上面的分析我们可以很清楚的知道什么时候使用emptyList;Collections集合中还有其它的几种空集合emptyMap、emptySet,...
public int hashCode() { return 1; } // Preserves singleton property private Object readResolve() { return EMPTY_LIST; } } 可以看到这个EmptList没有重写add方法,并且get方法也是直接抛出一个IndexOutOfBoundsException异常。既然没有重写add方法,那么看看父类AbstractList中的add方法: public boolean add(E ...
return emptyListIterator(); } publicint size() {return0;} publicboolean isEmpty() {returntrue;} publicboolean contains(Object obj) {returnfalse;} publicboolean containsAll(Collection<?> c) {return c.isEmpty(); } public Object[] toArray() {returnnew Object[0]; } ...
returnCollections.EMPTY_LIST; AI代码助手复制代码 我们都知道返回null,很有可能造成空指针异常,可以使用emptyList或EMPTY_LIST就可以避免这个问题,除非你想捕获这个为空的信息 我们在使用emptyList空的方法返回空集合的时候要注意,这个空集合是不可变的。
}publicListIterator<E>listIterator() {returnemptyListIterator(); }publicintsize() {return0;}publicbooleanisEmpty() {returntrue;}publicbooleancontains(Object obj) {returnfalse;}publicbooleancontainsAll(Collection<?> c) {returnc.isEmpty(); }publicObject[] toArray() {returnnewObject[0]; }public...
publicstaticfinal<T> List<T> emptyList() { return(List<T>) EMPTY_LIST; } 从上面我们可以看出,emptyList不过是对EMPTY_LIST做了一个泛型支持。这点上我们就可以很清晰的了解两者不同的使用场景了!若是不需要泛型的情况,可以直接使用Collections,反之则使用emptyList(). ...
return new ArrayList<>(); 解析: 先看下源码,其实就是返回了一个常量 list。 EmptyList 继承 AbstractList<E> 仔细查看源码你会发现它没有实现 add() 和 remove() 方法。 使用Collections.emptyList();的好处就是能节省内存开销,因为它一直引用同一对象地址而 new ArrayList<>();是生成新的对象(每次当 new...
在某些情况下,我们可能需要使用return语句来确认某些条件是否为真。例如,我们可能要检查一个列表是否为空,如果是,则使用return语句返回。 public class Example { public static void printList(List list) { if (list == null || list.isEmpty()) { ...