有没有一种类型安全的方法可以在java中将空列表作为参数传递?
下面的代码给出了编译错误:
public void method(List<String> aList) {}
public void passEmptyList() {
method(Collections.emptyList());
}
有没有办法将空列表传递给没有method
- 使用中间变量
- 铸造
- 创建另一个列表对象,例如
new ArrayList<String>()
?
下面的代码给出了编译错误:
public void method(List<String> aList) {}
public void passEmptyList() {
method(Collections.emptyList());
}
有没有办法将空列表传递给没有method
new ArrayList<String>()
?
取代
method(Collections.emptyList());
跟
method(Collections.<String>emptyList());
后面的 是 的类型参数的显式绑定,因此它将返回 a 而不是 .<String>
.
emptyList
List<String>
List<Object>
您可以指定类型参数,如下所示:
public void passEmptyList() {
method(Collections.<String>emptyList());
}