我有以下功能:堆污染进行简单的参数
public static <T> List<T> list(T... xs) {
final List<T> lst = new ArrayList<T>();
for (final T x : xs) {
lst.add(x);
}
return lst;
}
它的用法很简单:
List<Integer> ints = list(1, 2, 3, 4)
编译器给了我以下警告此列表
“类型安全:潜力通过可变参数的堆污染参数
我试图找出它的含义,但是我发现的所有解释都是针对自身参数化的参数的函数,例如,
f(List <T> ... xss)。
虽然我有通用非参数化参数的功能。
请解释我的功能潜在的问题是什么,因为我找不到任何东西。
[相关问答](https://stackoverflow.com/q/12462079/335858) – dasblinkenlight