2014-11-03 21 views
-1

我有一個帶有兩個參數(name, value)的對象的ArrayList。我也有一個ArrayList不同類型的對象與另外兩個參數(value, suit)。每個用戶對應(通過索引0-3)與第二個列表中具有相同索引的對象。在第二個ArrayList中查找具有最高值的第一個ArrayList的成員

我需要找到價值在SECOND列表中最高的用戶。

我該如何簡潔地做到這一點?我覺得我在這裏錯過了一些簡單的東西。

+1

後一些代碼。你試過什麼了? – Rockstar 2014-11-03 04:40:21

回答

0

假設你的名字 - 值元組類型爲NameValue,並假設你的其他元組類型ValueSuit你可能會做這樣的事情,

List<NameValue> firstList; 
List<ValueSuit> secondList; 
// ... firstList and secondList initialized ... 

首先,拿在第二列表中的最大值。

int maxValue = secondList.get(0).getValue(); 
for (ValueSuit vs : secondList) { 
    maxValue = Math.max(maxValue, vs.getValue()); 
} 

然後找到相應的NameValue

NameValue out = null; 
for (NameValue nv : firstList) { 
    if (nv.getValue() == maxValue) { 
    out = nv; 
    } 
} 
System.out.println(out); 
+0

謝謝艾略特! – howck 2014-11-03 17:15:35

+0

@howck如果回答你的問題,請[接受](http://meta.stackexchange.com/a/5235/243725)。 – 2014-11-03 17:16:33

相關問題