Java Map 排序: 将 Map<Long, GDSfdmap> 中的值排序为有序 List
将 Map<Long, GDSfdmap> 中的值排序为有序 List
以下代码示例展示了如何将 Map<Long, GDSfdmap> 中的值转换为有序的 List,并根据 GDSfdmap 对象的等级属性进行排序:
Map<Long, GDSfdmap> sfdmapList = ...; // 假设已存在 sfdmapList
// 无序变有序
List<GDSfdmap> list = new ArrayList<>(sfdmapList.values());
// 将 sfdmapList 的值存储到有序的 list 中
// 对 list 进行排序
Collections.sort(list, new Comparator<GDSfdmap>() {
@Override
public int compare(GDSfdmap o1, GDSfdmap o2) {
// 根据需要定义排序规则
// 这里假设 GDSfdmap 类有一个 getLevel() 方法来获取排序的值
return o1.getLevel().compareTo(o2.getLevel());
}
});
代码解释:
- 创建 List: 使用
new ArrayList<>(sfdmapList.values())将sfdmapList中的值复制到一个新的List中。 - 自定义 Comparator: 创建一个
Comparator实例,并在compare()方法中定义排序规则。在本例中,通过比较o1.getLevel()和o2.getLevel()来确定排序顺序。 - 排序: 使用
Collections.sort(list, comparator)对list进行排序,其中comparator是前面创建的Comparator实例。
总结:
通过以上代码,可以根据 GDSfdmap 对象的等级属性对 List 进行排序。根据实际需要,可以在 compare() 方法中定义其他排序规则,例如根据其他属性进行排序,或者使用自定义的比较逻辑。
原文地址: https://www.cveoy.top/t/topic/evrG 著作权归作者所有。请勿转载和采集!