当前位置: 首页 > 知识库问答 >
问题:

添加了基于顺序值的HashMap循环[重复]

陶健
2023-03-14
map.put(one, alpha)
map.put(two, delta)
map.put(three, gamma)
key: one value: 1
key: two value: 2
key: three value: 3

现在,当我尝试运行它时,结果是这样的:

key: two value: 1
key: one value: 2
key: three value: 3

共有1个答案

孔驰
2023-03-14

如果希望按照键添加到映射中的顺序遍历键,请使用LinkedHashMap。

如果希望按字母顺序遍历键,请使用TreeMap。

如果希望按照自己定义的任意顺序遍历键,请使用带有所提供的比较器的TreeMap。

 类似资料:
  • 我有一个游戏,每隔X秒它就会把内存中改变的值写回我的数据库。当编辑这些值保存的数据时,它们存储在容器(HashMaps和ArrayList)中。 为了简单起见,假设我只有一个容器可以写入数据库: 我的DB写入循环: 我的更新方法: 我是否需要在为dbEntitiesDeletesBacklog HashMap和本摘录中未包含的其他容器“保存到DB”时创建某种锁定机制?我想我需要这样做,因为它会创建

  • 我有一个任务来优化for循环,以便编译器编译运行更快的代码。目标是使代码在 5 秒或更短的时间内运行,原始运行时间约为 23 秒。原始代码如下所示: 我的第一个想法是在内部for循环上进行循环展开,使它降到5.7秒,循环看起来像这样: 在每个循环的阵列中将其取出12个点后,性能不再增加,所以我的下一个想法是尝试引入一些并行性,所以我做了这个: 这实际上最终减慢了代码的速度,并且每个附加变量再次减慢

  • 在std::unordered_映射上运行基于范围的for循环时,循环变量的类型似乎不使用引用类型: MSVC 2017、gcc 8.2和clang 7.0.0都在这里报告了一个失败的断言。与std::vector相反,它的断言不会失败,正如人们所期望的那样: 然而,在MSVC 2017和gcc 8.2上,修改局部变量r的循环将产生明显的副作用: 例如,此程序将打印(忽略订单): 我遗漏了什么?尽

  • 我有一个使用迭代器循环通过HashMap的程序,在循环中,我将添加到HashMap-这将导致一个并发修改异常。我已经看到ListIterator有一个add()函数来处理这个问题,但是Iterator没有。 HashMap是这样设置的- 还有像这样的迭代器- 对象(不是真实的名字)是一个类从我的程序。有人知道如何在循环或任何其他选项时添加到迭代器吗?

  • 问题内容: 我在Java中具有以下哈希图: 我应该如何对哈希图进行排序,以便考虑字母和数字? 生成的哈希图应如下所示: 感谢帮助! 问题答案: 使用排序: 它将自动放置按键排序的条目。我认为自然排序适合你的情况。 注意,由于查找优化,不会保留顺序。

  • 问题内容: 我觉得这里缺少明显的东西! 输出: 当然应该输出: 这是怎么了 问题答案: 字典未排序。如果需要依赖顺序,则需要一个OrderedDict- Python 2.7的模块中有一个,或者您可以使用多种食谱之一。