gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 08:27:22 24 4
gpt4 key购买 nike

我正在尝试创建一个只能包含数字的通用列表。当我尝试向其中添加整数时,出现以下错误。

add(T) in List cannot be applied to Java.lang.Number

public class QueryHelper<T extends Number> {

private List<T> records;

public void query(QueryTypes queryType) {
records = new ArrayList();
records.add((Number)new Integer(90));
}
}

是什么导致了这个问题?

最佳答案

一个List<T>哪里T extends Number可以是List<Number> ,一个List<Integer> ,一个List<Double>等等...

您无法添加 IntegerList<Double> 。因此出现编译错误。

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

private List<Number> records;

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

关于java - List 中的 add(T) 不能应用于 Java.lang.Number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46789953/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com