我开始学习Java。什么时候可以在TreeMap上使用HashMap?
TreeMap
是一个的示例SortedMap
,这意味着可以对键的顺序进行排序,并且在对键进行迭代时,可以期望它们会按顺序排列。
HashMap
另一方面,不作任何保证。因此,当遍历a的键时HashMap
,您无法确定它们将以什么顺序排列。
HashMap
一般而言,它会更有效,因此只要您不关心键的顺序,都可以使用它。
问题内容: 我看到了许多有关多图的示例,但不明白为什么Google Gauva与众不同? 两者在保存数据方面是相同的还是不同的? 问题答案: A 将类型A的键与类型的值相关联(因此名称为MultiMap) A 将类型A的键与类型B的值关联。 因此,可以将a视为。通过阅读api文档,这应该显而易见。
问题内容: 是什么区别,而在中?我没有看到输出的任何差异,因为这三个都有和。什么是? 问题答案: 这三个类都实现了该接口,并提供了几乎相同的功能。最重要的区别是通过条目进行迭代的顺序: 绝对不保证迭代顺序。添加新元素时,它甚至可以(并将)完全改变。 将根据密钥的“自然顺序”(根据其方法)(或外部提供的)进行迭代。此外,它实现了SortedMap接口,该接口包含依赖于此排序顺序的方法。 将按照条目放
问题内容: ava中的aHashMap和a有什么区别Hashtable? 对于非线程应用程序,哪个更有效? 问题答案: 和在Java中有一些区别: 是同步的,而HashMap不是。这HashMap对于非线程应用程序更好,因为非同步对象的性能通常优于同步对象。 不允许null键或值。 HashMap允许一个null键和任意数量的null值。 的子类之一是LinkedHashMap,因此,如果您想要可
hashmap和hashtable在理论上有区别吗? 我不是指Java(或实现)中给出的具体定义,而是理论上的。哈希表不是使用哈希的地图吗...因此是hashmap?
当我想初始化一个HashMap时,我是Java新手。我可以找到这两个解决方案: 我知道Map是一个接口,HashMap实现了它。但为什么我们这里有两个?他们每个人都有什么好处?
问题内容: 何时使用哈希图或树图? 我知道可以在需要对元素进行排序时使用TreeMap对其进行迭代。只是吗?当我只想查阅地图或某些最佳特定用途时,没有优化? 问题答案: 哈希表(通常)执行搜索操作(查找),其复杂度限制为,平均情况复杂度为;但是,二进制搜索树(BST)执行搜索操作(查找),其复杂度限制为,平均情况复杂度为。(您自己)应该了解每个(每个)数据结构的实现,以了解其优缺点,操作时间复杂度