的我是新來的Java 8流,並有一個問題 我有最多的製造數據流這樣轉換數據流的一組對象
RequestObject {
String Name;
Long timestamp;
Set<String> data;
}
我要流這個數據並對其進行處理並計算名稱以及它出現的時間。
我的最終目標是
ProcessedData {
String name; //request object name
float pct; //percentage of times it appears in all the stream
int count; count of times it appears
}
我不知道我是否應該用減少或收集以及如何可能的樣子。
Set<ProcessedData> result = sourceData.stream().collect/reduce....
你如何計算pct?你能舉一個簡單的輸入/輸出例子嗎? – assylias
totalOfName/totalOfAllNames。在java前8我會做這樣的事情。假設我正在處理的數據位於地圖中如果數據產生了一個地圖對於(字符串名稱:結果數據.getKeySet()){計數=結果數據.get(名稱);總計+ =計數;}然後做pct鈣或類似的東西 –
user1864350