gpt4 book ai didi

Java 泛型运算符

转载 作者:搜寻专家 更新时间:2023-11-01 04:02:13 26 4
gpt4 key购买 nike

我有以下方法:

  private <E extends Number> double GetAverage(ArrayList<E> al)
{
double total = 0;
Iterator<E> itr = al.iterator();
while(itr.hasNext())
{
total += itr.next();
}

return total;
}

但它不编译。我得到一个

"total cannot be resolved or is not a field"

在线

"total += itr.next();"

我知道 Java 不知道 E 的值,但我希望你明白我的意思,创建一个将 ArrayList 的总计(数值)相加的通用方法的最佳方法是什么。

最佳答案

您的代码实际上存在语法错误,您的代码行不完整。您的完整代码应该是:

private <E extends Number> double GetAverage(ArrayList<E> al) {
double total = 0;
Iterator<E> itr = al.iterator();
while (itr.hasNext()) {
E next = itr.next();
total += next.doubleValue();
}

return total;
}

注意:返回的是'total'而不是undefined retVal

关于Java 泛型运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9069595/

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