[英]java stream for hashmap
我正在從數據庫中構建一個Hashmap<Integer, POJO>
(可以包含超過1萬條記錄)。 然后我需要在遍歷哈希圖的情況下調用pdf生成函數
for(Map.Entry<Integer, LocationPojo> village : allVillages.entrySet()) {
genPdf(stateCode, village.getValue().getDistrictCode().toString() , village.getValue().getBlockCode().toString(),
village.getValue().getVillageCode().toString(), village.getValue().getVillageNameEnglish(), villageFile);
}
是否可以使用java 8 stream api
來更快地處理上述數據?
您可以使用流來並行化genPdf
調用:
allVillages.values().stream().parallel().forEach(village -> {
genPdf(stateCode, village.getDistrictCode().toString(), village.getBlockCode().toString(),
village.getVillageCode().toString(), village.getVillageNameEnglish(), villageFile);
});
這是否真正加快了處理速度,取決於可以並行運行多少genPdf
。 磁盤驅動器一次只能寫一件事,因此,如果genPdf
大部分時間都在將PDF文件寫到磁盤上,則不會有太大區別。 還請記住,這可能會改變村庄的處理順序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.