按值排序列表

ped*_*dja 5 java sorting list

我有一个List<String>和一个List<Integer>.两者都按特​​定顺序(它们是相互关联的).List<String>包含名称List<Integer>及其值.

有没有办法List<Integer>按大小排序,但也改变排序,List<String>以便值和名称保持联系?

Sub*_*der 15

你需要java.util.TreeMap<Integer,String>.这根据其键的自然顺序进行排序,或者根据使用的顺序Comparator在地图创建时提供constructor.

  • 有人可以提供示例 (2认同)

JB *_*zet 14

您应该使用一个List<NameAndValue>而不是两个列表(并找到比NameAndValue更好的名称,这将反映这些数据实际代表的内容).Java是一种OO语言.使用对象.这就是他们的目的:包含相关的数据,并提供方法和封装的行为.

拥有此类后,您将能够按名称,值或两者对列表进行排序,并在需要时添加其他字段不会出现问题.