我想要一个可以按属性排序的类(可能使用comparable和comparator)。但是这个类没有普通的类属性,而是有一个“键值对列表”。
class Normal
{
String attrib1;
String attrib2;
int attrib3;
}
此类属性
class Special
{
Map<String,Object> attributes =new HashMap<String,Object>()
}
基本上,类属性是基于场景动态生成的。所以在给定的场景中,对象属性hashmap,
attrib1 : "value1"
attrib2 : "value2"
attrib3 : 3
所以我需要实现类'special',其中类'special'类型的对象列表可以按给定的attibute排序(etc:sortedbyattrib3)。
1条答案
按热度按时间pcww981p1#
首先:
值必须实现可比较的接口。
然后你可以使用这样的比较器:
最后给你的名单排序: