【发布时间】:2012-09-17 16:30:03
【问题描述】:
我正在尝试对我的 ArrayList 进行排序。
java.util.ArrayList arList= new java.util.ArrayList();
arList=getList();
java.util.Collections.sort(arList);
我的 getList() 函数在这里
public ArrayList getList() throws Exception
{
ArrayList listItems = new ArrayList();
//Query executing here..............!
while (rs.next())
{
HashMap hashList = new HashMap();
hashList.put("name",rs.getString(1));
hashList.put("id",rs.getBigDecimal(2));
listItems.add(hashList);
}
return listItems;
}
但是我遇到了错误:java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.Comparable
【问题讨论】:
-
您究竟是如何尝试对
ArrayList进行排序的?您的列表包含多个HashMaps。您是尝试根据地图的键还是地图的值对其进行排序? -
你为什么在这里使用
HashMaps?您应该创建一个适当的对象类来保存名称和 ID。
标签: java sorting arraylist hashmap