java - ArrayList <Double> 理解

标签 java arraylist double

我正在 ArrayLists 上做一个项目和数学方法,如总和、标准差和方差等,我遇到过这个ArrayList<Double> .

public static double Sum(ArrayList<Double> list) {
    double sum = 0;
    for (int i = 0; i < list.size(); i++) {
        sum = sum + list.get(i);
    }
    return sum;
}

我明白怎么做ArrayList有效,但我不太确定这个方法发生了什么,任何人都可以帮助我更好地理解它吗?

最佳答案

这些被称为 Generics 。 Oracle有一个伟大的tutorial on it

长话短说,如果你写List list = new ArrayList这意味着任何东西都可以放入该列表中:玩具、食物、书籍。有点困惑吧?我敢打赌,您宁愿拥有只包含某些类型元素的盒子:一个装玩具的盒子,另一个装食物的盒子,还有一个装书的盒子。这通常就是泛型允许您做的事情。通过写List<Book> list = new ArrayList<>() ,你是说这个列表只能包含书籍。如果您尝试在其中放入其他内容,则会收到错误消息。

总而言之,就您的情况而言,方法 sum需要ArrayList<Double> - 只能包含 Double 的列表对象。您可以确定所有元素都属于该类型,因此无需检查。

关于java - ArrayList <Double> 理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43502058/

相关文章:

java - Android:将方法关联到智能手机的主页按钮

java - 替代 CopyOnWriteArrayList 用于频繁写入,偶尔迭代

android - 如何在具有通过 ArrayAdapter 放置的 ArrayList 的 ListView 上设置字体

java - 为什么这些java行会进入无限循环

用于排序的 Java Double NaN 比较

C语言 : scanf function producing different results with float and double types?

Java并发,在父线程中设置flag

java - 我怎么知道 DataInput 的大小?

java - Spring Boot @RequestBody 没有完全复制参数

iphone - 如何在 iOS 上以全精度打印 double ?