Java 根据值按降序排列番石榴表

Java 根据值按降序排列番石榴表,java,hashmap,guava,Java,Hashmap,Guava,我计划使用番石榴表以表格式存储我的值。我想知道一些函数,它根据表中的值执行降序排序。。。你们能谈谈对这件事的看法吗。谢谢。就像使用映射一样,您应该复制cellSet(),按值对单元格进行排序,然后将其放入保留顺序的不可变的 Ordering<Table.Cell<String, String, Integer>> comparator = new Ordering<Table.Cell<String, String, Integer>>() {

我计划使用番石榴表以表格式存储我的值。我想知道一些函数,它根据表中的值执行降序排序。。。你们能谈谈对这件事的看法吗。谢谢。

就像使用映射一样,您应该复制
cellSet()
,按值对单元格进行排序,然后将其放入保留顺序的
不可变的

Ordering<Table.Cell<String, String, Integer>> comparator =
  new Ordering<Table.Cell<String, String, Integer>>() {
    public int compare(
        Table.Cell<String, String, Integer> cell1, 
        Table.Cell<String, String, Integer> cell2) {
      return cell1.getValue().compareTo(cell2.getValue());
  }
};
// That orders cells in increasing order of value, but we want decreasing order...
ImmutableTable.Builder<String, String, Integer>
    sortedBuilder = ImmutableTable.builder(); // preserves insertion order
for (Table.Cell<String, String, Integer> cell :
    comparator.reverse().sortedCopy(table.cellSet())) {
  sortedBuilder.put(cell);
}
return sortedBuilder.build();
排序比较器= 新排序(){ 公共整数比较( 表1.单元格1, 表1.单元格(2){ 返回cell1.getValue().compareTo(cell2.getValue()); } }; //按值的递增顺序排列单元格,但我们需要递减顺序。。。 不可变的.Builder sortedBuilder=不可变的.builder();//保留插入顺序 对于(表。单元格: comparator.reverse().sortedCopy(table.cellSet()){ 分类构建器。放置(单元); } 返回sortedBuilder.build();
无论如何,这或多或少正是您编写的按值对映射进行排序的代码。

就像使用映射一样,您应该复制
cellSet()
,按值对单元进行排序,然后将其放入保持顺序的
不可变的

Ordering<Table.Cell<String, String, Integer>> comparator =
  new Ordering<Table.Cell<String, String, Integer>>() {
    public int compare(
        Table.Cell<String, String, Integer> cell1, 
        Table.Cell<String, String, Integer> cell2) {
      return cell1.getValue().compareTo(cell2.getValue());
  }
};
// That orders cells in increasing order of value, but we want decreasing order...
ImmutableTable.Builder<String, String, Integer>
    sortedBuilder = ImmutableTable.builder(); // preserves insertion order
for (Table.Cell<String, String, Integer> cell :
    comparator.reverse().sortedCopy(table.cellSet())) {
  sortedBuilder.put(cell);
}
return sortedBuilder.build();
排序比较器= 新排序(){ 公共整数比较( 表1.单元格1, 表1.单元格(2){ 返回cell1.getValue().compareTo(cell2.getValue()); } }; //按值的递增顺序排列单元格,但我们需要递减顺序。。。 不可变的.Builder sortedBuilder=不可变的.builder();//保留插入顺序 对于(表。单元格: comparator.reverse().sortedCopy(table.cellSet()){ 分类构建器。放置(单元); } 返回sortedBuilder.build();
无论如何,这或多或少正是您编写的按值对地图排序的代码。

可能重复的可能重复的可能重复的感谢您的回答。。如果可能的话,请你看一下这个或链接参考谢谢你的回答。。如果可能的话,你能给这个或链接参考一瞥吗