我有一個List<A>
。我們稱它爲newList
。現在類A
有2個屬性id
和weight
。現在newList
包含A
類型的各種條目。我想要的是包含id->weight
的地圖,這樣映射了特定的id
中最重的(通過最重的是指具有最高權重值的實例)。列表的高效過濾
Example say the List contains the following objects:
obj1: id=1 weight=5
obj2: id=1 weight=10
obj3: id=1 weight=12
obj4: id=2 weight=6
obj5: id=2 weight=7
的地圖應該是
id:1->weight:12
id:2->weight:7
什麼我目前做的是一個迭代列表中的一個,並檢查給定的鍵(id)什麼是已經存在的值(權重)和覆蓋如果我現在的價值更大。雖然這很好。我想可能會有一些更優雅的列表理解,我可以嘗試用番石榴。任何幫助?
你可以使用Java 8嗎?番石榴可能會有點困難。 –