我有一個ArrayList
。如何對存儲在散列表中的數值進行排序,然後在Java的ArrayList中對數值進行排序?
每個元素是一個HashMap
查找我的值。
其中1個值是數字。
我使用Collections.sort()
進行alpha排序。但是這些數字正在被alpha排序,而不是數字排序。
protected ArrayList<HashMap<String, String>> myAccountList;
String Name = myAccountList.get(i).get("accountName");
Double balance = Double.valueOf(myAccountList.get("accountBalance")); //is a number stored as a string
所以我對accountName的工作很好。
Collections.sort(myAccountList, new Comparator(){
public int compare(Object o1, Object o2) {
HashMap<String,String> old1 = (HashMap<String, String>) o1;
HashMap<String,String> old2 = (HashMap<String, String>) o2;
return old1.get("accountName").compareToIgnoreCase(old2.get("accountName"));
}
});
如何將字段accountBalance排序爲數字?我懷疑它的重要性,但我正在編寫一個Android應用程序。
爲什麼不將餘額作爲「Double」存儲?例如,'HashMap' –
好的,我可以做到這一點。但是這種排序是什麼樣子?我該如何讓HashMap接受以及? –
kireol
如果你在地圖上持有字符串和雙打,你不能這樣做。你可以使用'HashMap'。 –