从最大值开始对ArrayList<HashMap<String, Object>>进行排序,可以按照以下步骤进行:
下面是一个示例代码:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
public class SortArrayList {
public static void main(String[] args) {
ArrayList<HashMap<String, Object>> list = new ArrayList<>();
// 添加HashMap到ArrayList
HashMap<String, Object> map1 = new HashMap<>();
map1.put("key1", 5);
map1.put("key2", "value1");
list.add(map1);
HashMap<String, Object> map2 = new HashMap<>();
map2.put("key1", 3);
map2.put("key2", "value2");
list.add(map2);
HashMap<String, Object> map3 = new HashMap<>();
map3.put("key1", 8);
map3.put("key2", "value3");
list.add(map3);
// 获取特定键对应的值并存储到新的ArrayList
ArrayList<Integer> values = new ArrayList<>();
for (HashMap<String, Object> map : list) {
int value = (int) map.get("key1");
values.add(value);
}
// 对新的ArrayList进行排序(从最大值开始)
Collections.sort(values, Comparator.reverseOrder());
// 根据排序后的新ArrayList,重新排序原始ArrayList中的HashMap
ArrayList<HashMap<String, Object>> sortedList = new ArrayList<>();
for (int value : values) {
int index = values.indexOf(value);
sortedList.add(list.get(index));
}
// 打印排序后的结果
for (HashMap<String, Object> map : sortedList) {
System.out.println(map);
}
}
}
这段代码演示了如何对ArrayList中的HashMap按照特定键对应的值进行排序,并且从最大值开始排序。你可以根据实际需求修改代码中的键名和数据类型。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云