【问题标题】:Keeping multiple counter integers and their respective object in a single ordered data structure?将多个计数器整数及其各自的对象保存在一个有序的数据结构中?
【发布时间】:2011-05-13 13:57:48
【问题描述】:

所以我试图跟踪键盘上每个键被按下的次数,所以我需要像 TreeMap 这样按变量排序的东西。有谁知道一个很好的数据结构来处理这个问题?

【问题讨论】:

  • 看起来类似于this。
  • 订购是什么意思?您需要在此处指定您所说的订单类型。
  • 假设它是一个 TreeMap。它将按值而不是键从高到低排序。

标签: java variables count counter


【解决方案1】:

为什么不使用TreeMap?它可以使用Comparator 对其元素进行排序。您可以定义一个实现Comparator 的类,它将确定两个char 中的哪一个比另一个“更大”,从而提供一种排序方式。我认为String 有一种方法可以做到这一点;您的Comparator 只需将char 转换为String,然后返回String.compare 的值。

【讨论】:

  • 我试过这个,但是当我的 TreeSet 有两个对象进行比较时,我得到了 NullPointerException
  • 我知道为什么,Java 不通过引用传递 TreeMaps,所以比较器中的映射与我的主代码中的映射不同。
【解决方案2】:

为什么不创建一个键值对应数组索引的 int 数组呢?只要您不支持超出例如标准 ASCII,这应该是合理的。

【讨论】:

  • 不会订购的。我可能会为此制定一个方法,但我想先看看是否有更简单的方法
  • 可以说它是一个 TreeMap。它将按值而不是键从高到低排序。
  • 不,它不会,它会被钥匙订购。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-21
  • 1970-01-01
  • 2022-01-25
  • 1970-01-01
相关资源
最近更新 更多