3
總結通用的數字我有以下情形:如何在Java
class MyListOfNumbers<T extends Number & Comparable<T>>
{
public T sum()
{
return list_of_Ts.stream()
.sum();
}
}
我什麼都不知道(故意)大約T t,除了它是一個數字,它可以被比喻爲「兄弟姐妹」(需要整理東東...)。
很明顯,這不起作用,它不會以舊Java的方式工作(即循環),因爲根據我所知,您根本無法做到T x = 0
。
這兩個都不會工作,我認爲相同的原因和事實,即T不執行總和;此外,我讀它不會在空集。
class MyListOfNumbers<T extends Number & Comparable<T>>
{
public T sum()
{
return list_of_Ts.stream()
.reduce(0, T::sum);
}
}
那麼該怎麼做?
編輯:請考慮T可以從字節什麼一個BigDecimal,它迫使一個整數可能意味着丟失數據
你是如何創建'list_of_Ts'? – alayor
@alayor它實際上來自一個HashMap.entrySet() –
@alayor這並不重要。它可以通過構造函數傳遞,也可以在內部創建,並用'void add(T e){list_of_Ts.add(e);}'方法填充。重要的是,我們可以假設我們可以訪問'List list_of_Ts',它可能包含一些'T'元素。 –
Pshemo