List中的add(T)不能应用于Java.lang.Number

时间:2017-10-17 12:17:05

标签: java generics collections

我正在尝试制作一个只能包含Numbers的通用List。当我尝试向其添加一个Integer时,会出现以下错误。

  List中的

add(T)不能应用于Java.lang.Number

.my-cv{
    list-style-type: disc;
}
.my-cv  li{
    color: #5dc5ef;
}
.my-cv  span{
    color: black;
}

是什么导致了这个问题?

1 个答案:

答案 0 :(得分:9)

List<T>其中T extends Number可以是List<Number>List<Integer>List<Double>等等。

您无法将Integer添加到List<Double>。因此编译错误。

如果您希望能够将任何Number实例添加到该列表,只需将其定义为

private List<Number> records;

这意味着您不需要泛型类型参数T