我有一個arraylist,它包含一個100員工對象,每個對象都包含「Name」和「Salary」。我們需要從Object中找到Max薪水的employeee。請讓我知道是什麼方式。Collections -ArrayList
我想實現的compareTo和equals方法是它的權利,並且還使用Collections.sort是正確的做法或有任何其他方式
我有一個arraylist,它包含一個100員工對象,每個對象都包含「Name」和「Salary」。我們需要從Object中找到Max薪水的employeee。請讓我知道是什麼方式。Collections -ArrayList
我想實現的compareTo和equals方法是它的權利,並且還使用Collections.sort是正確的做法或有任何其他方式
如果語言是Java,那麼無論執行Comparable接口(只需要compareTo
- 無需equals
)查找數組列表中的對象,並調用Collections.sort(arraylist)
,或者寫一個Comparator並調用Collections.sort(arraylist, comparator)
。後者更靈活,因爲它不需要你的對象總是按薪水排序。
對不起忘了提到語言是java – gaurav 2011-05-05 17:32:51
你不需要自己排序。你的情況對於優先隊列是完美的。寫@Ted建議的比較器並將數據添加到PriorityQueue中 - 它會根據您希望最小/最大值 - 薪水的數據給出最小或最大值。詳細信息: How do I use a PriorityQueue?
在什麼語言/平臺? – 2011-05-05 17:24:15
你的問題已經開始聽起來非常的功課了。 – 2011-05-05 19:31:03