【发布时间】:2021-09-25 21:53:00
【问题描述】:
我必须找到这个泛型类的平均值
code
class Array <T> {
private T[]array;
public Array(T[] array) {
this.array = array;
}
public T get (int index) {
return array[index];
}
public int length() {
return array.length;
}
}
使用这两个数组:
Array<Integer>set1 = new Array<>(new Integer[] {1 ,2 , 4, 5});
Array<Double>set2 = new Array<>(new Double[] {1.0 ,3.0, 5.0});
有人能解释一下它是如何工作的吗?
【问题讨论】:
-
将值相加并除以数组的长度有什么问题?
-
您可以确定
T extends Number,然后在每个元素上调用doubleValue(),将它们相加,然后除以长度。如果您还希望平均值为T类型,则没有通用方法可以实现它(使用反射除外)。 -
对于不受约束的
Ts 这是不可能的,因为应该是Strings"this"和"that"的平均值。 -
我实际上试图在一个周期内找到这两个数组的平均值。我的意思是,创建独特的循环来查找两个数组的平均值
-
double sumOfList2(List list1) { double s = 0.0;像这样?
标签: java arrays generics java-8 average