0

我现在有这个,但是当键冲突时我会遇到问题(我通过在双精度中添加一个非常小的数字来解决这个问题。但这不是很好(我真的不想添加小数字)

 TreeMap<Double, String> statisticAndTitle = new TreeMap<Double, String>(Collections.reverseOrder());

该字符串是唯一的,所以如果我有:

  • D 1.1
  • 2.0
  • C 4.0
  • 1.1
  • 3.3

我希望它按 D1 A1 B2 E3 C4 排序(列表中的出现顺序(不按字母顺序)很重要,如果 D1 在列表中的 A1 之前,它也应该在地图中如此(这意味着我不能只排序具有正常排序算法的第二列,因为它不考虑列表中的位置)

关于如何使用地图或其他方式实施的任何想法?

4

2 回答 2

1

我希望它按 D1 A1 B2 E3 C4 排序(列表中的出现顺序(非字母顺序)很重要。

List 维护顺序。

创建一个包含 String 字母和 Double 数字的类。实现 Comparable 并在类中编写 compareTo 方法。

创建并加载类列表。

对列表进行排序。

于 2013-01-22T19:28:51.217 回答
1

使用LinkedHashMap. 它会记住添加的顺序。

于 2013-01-22T19:34:37.843 回答