Map.keySet 和 Map.values 上的迭代顺序相同吗?

2024-03-15

对于这样的地图:

Map<Integer, Integer> map = ...;
map.put(1, 1);
map.put(2, 2);
map.put(3, 3);
map.put(4, 4);

这段代码是不是...

for (Integer i : map.keySet()) System.out.println(i);
for (Integer i : map.values()) System.out.println(i);

...保证打印相同的序列两次?

如果没有,是否有任何保证,例如java.util.HashMap?


不,不能保证,尽管实际上它会发生(映射没有充分的理由对键和值使用不同的迭代器)。

如果要保证迭代顺序,请迭代entrySet():

for (Map.Entry<Integer,Integer> entry : map.entrySet())
    // ...

既然你问的是HashMap,另请注意,由于地图被重新散列,对地图的任何更改都可能会改变迭代顺序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Map.keySet 和 Map.values 上的迭代顺序相同吗? 的相关文章

  • java.lang.NoClassDefFoundError:org.apache.batik.dom.svg.SVGDOMImplementation

    我在链接到我的 Android LibGDX 项目的 Apache Batik 库时遇到了奇怪的问题 但让我们从头开始 在 IntelliJ Idea 中我有一个项目 其中包含三个模块 Main Android 和 Desktop 我强调的
  • Java Swing:从 JOptionPane 获取文本值

    我想创建一个用于 POS 系统的新窗口 用户输入的是客户拥有的金额 并且窗口必须显示兑换金额 我是新来的JOptionPane功能 我一直在使用JAVAFX并且它是不同的 这是我的代码 public static void main Str
  • 如何默认将 Maven 插件附加到阶段?

    我有一个 Maven 插件应该在编译阶段运行 所以在项目中consumes我的插件 我必须做这样的事情
  • Java EE:如何获取我的应用程序的 URL?

    在 Java EE 中 如何动态检索应用程序的完整 URL 例如 如果 URL 是 localhost 8080 myapplication 我想要一个可以简单地将其作为字符串或其他形式返回给我的方法 我正在运行 GlassFish 作为应
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • Mockito when().thenReturn 不必要地调用该方法

    我正在研究继承的代码 我编写了一个应该捕获 NullPointerException 的测试 因为它试图从 null 对象调用方法 Test expected NullPointerException class public void c
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • 如何将 pfx 文件转换为 jks,然后通过使用 wsdl 生成的类来使用它来签署传出的肥皂请求

    我正在寻找一个代码示例 该示例演示如何使用 PFX 证书通过 SSL 访问安全 Web 服务 我有证书及其密码 我首先使用下面提到的命令创建一个 KeyStore 实例 keytool importkeystore destkeystore
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • 在 Mac 上正确运行基于 SWT 的跨平台 jar

    我一直致力于一个基于 SWT 的项目 该项目旨在部署为 Java Web Start 从而可以在多个平台上使用 到目前为止 我已经成功解决了由于 SWT 依赖的系统特定库而出现的导出问题 请参阅相关thread https stackove
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • 在mockito中使用when进行模拟ContextLoader.getCurrentWebApplicationContext()调用。我该怎么做?

    我试图在使用 mockito 时模拟 ContextLoader getCurrentWebApplicationContext 调用 但它无法模拟 here is my source code Mock org springframewo
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 声明的包“”与预期的包不匹配

    我可以编译并运行我的代码 但 VSCode 中始终显示错误 早些时候有一个弹出窗口 我不记得是什么了 我点击了 全局应用 从那以后一直是这样 Output is there but so is the error The declared
  • 静态变量的线程安全

    class ABC implements Runnable private static int a private static int b public void run 我有一个如上所述的 Java 类 我有这个类的多个线程 在里面r
  • 在 Maven 依赖项中指定 jar 和 test-jar 类型

    我有一个名为 commons 的项目 其中包含运行时和测试的常见内容 在主项目中 我添加了公共资源的依赖项
  • 捕获的图像分辨率太大

    我在做什么 我允许用户捕获图像 将其存储到 SD 卡中并上传到服务器 但捕获图像的分辨率为宽度 4608 像素和高度 2592 像素 现在我想要什么 如何在不影响质量的情况下获得小分辨率图像 例如我可以获取或设置捕获的图像分辨率为原始图像分
  • 有没有办法为Java的字符集名称添加别名

    我收到一个异常 埋藏在第 3 方库中 消息如下 java io UnsupportedEncodingException BIG 5 我认为发生这种情况是因为 Java 没有定义这个名称java nio charset Charset Ch
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview

随机推荐

  • AVAudioPlayer 声音未播放

    在 iOS 8 Xcode 6 中 我有一个包含声音效果的功能 多次更改代码后 它在 iOS 9 中不再起作用 这是我尝试过的 原来的 let bangSoundEffect SKAction playSoundFileNamed Bang
  • Android Studio 2 错误:app:compileDebugJavaWithJack

    这是 Android Studio 2 1 1 的完整错误 我知道这段代码可以编译 因为在其他 PC 上它可以编译 但在 Windows 10 x64 的这台 PC 上却不行 所有其他项目都以类似的结果失败 Error Execution
  • php代码到mysql数据库导出[重复]

    这个问题在这里已经有答案了 可能的重复 最佳实践 在 PHP 中导入 mySQL 文件 分割查询 https stackoverflow com questions 1883079 best practice import mysql fi
  • hibernate 主键的原语或包装器

    我一直在查看各种 hibernate 教程和示例 对于它们的标识 主键属性 有些使用 Java 原始类型 有些使用包装类型 即 private int id vs private Integer id 为什么以及何时使用其中一个作为实体键
  • Asp.net Core 电子邮件确认有时会显示 InvalidToken

    我正在使用 asp net core Identity 2 1 我遇到了电子邮件确认的随机问题 而电子邮件确认有时会说结果 Error InvalidToken 令牌也没有过期 Note 我们正在使用多个服务器 并且我们还将密钥存储在一个地
  • 如何让顶部的大图片变小并最终粘在顶部?

    我想将我的网站分为两部分 包含大图像的标题和包含其他图像 文本等的主要部分 当我滚动页面时 标题上的大图像应该与主要部分一起滚动 在某一时刻 图像应该变得固定 并且主要部分在其后面滚动 我尝试了一些不同的方法 但我无法获得位置 显示 顶部等
  • d3 js - 将气泡聚集到分段

    最新小提琴 https jsfiddle net tk5xog0g 8 https jsfiddle net tk5xog0g 8 第二次摆弄自定义图表 随机将气泡放置在靠近区域的区域 但不能考虑重叠或从中心图表区域脱落的情况 http j
  • 从日期时间中删除分钟 - sql

    DECLARE MinutesToAdd int 20 DECLARE StartTimeDate datetime 2017 06 05 14 37 56 113 DATEADD minute MinutesToAdd StartTime
  • 在 React/Redux 中分派操作时有没有好的方法来防止默认情况?

    我正在调度一个操作 该操作运行一个减速器 在表单提交时将一些文本推送到我的 redux 状态 我知道在 Vue 中你可以preventDefault就在 DOM 中 但我在 React 中没有看到任何东西可以让这看起来成为可能 我想知道阻止
  • WordPress 网站中的 jQuery UI 工具提示

    尝试让工具提示使用图片而不是文本 到目前为止 它适用于我网站中的文本 a href title hello world ALOHA a 这工作正常 它在链接悬停时显示 hello world 但如果我尝试以下操作 工作 jsfiddle 示
  • 如何调试生成格式错误的可执行文件的实验工具链

    我正在使用交叉编译一个实验性的 GNU 免费 Linux 工具链clang http clang llvm org 代替gcc compiler rt http compiler rt llvm org 代替libgcc libunwind
  • sql 将单行转换为键/值列

    我有一个返回 1 行的 SQL 查询 其中包含多个列标题 Col 1 Col 2 Col 3 val 1 Val 2 Val 3 有没有办法将此行转换为 2 列 即 Col 1 Val 1 Col 2 Val 2 Col 3 Val 3 这
  • 严格别名警告,创建对 unsigned char 数组 + 偏移量的 uint32_t 引用

    在 GNU GCC 4 7 0 中 我收到了一些严格的别名警告 我想解决这些警告 我有一个有效负载 来自硬件 unsigned char payload davidlt PAYLOAD SIZE 我有这一行 uint32 t payload
  • 新类型的一个覆盖如何显示?

    我想重写 Haskell 中的默认整数构造函数 以便它们生成字符串 主要是出于好奇 但暂时为 LaTeX 的 frac 不便提供一个很好的输入替代方案 我希望能够使用语言本身 而不是特殊的解析器 但我想这可能行不通 module Main
  • 如何使用 Python 和 MySQLdb 检索 mysql 数据库中的表名?

    我有一个 SQL 数据库 想知道您使用什么命令来获取该数据库中的表名列表 更完整一点 import MySQLdb connection MySQLdb connect host localhost user myself passwd m
  • 关于访问 Tuple2 内的字段时发生错误

    我正在尝试访问 Tuple2 中的字段 但编译器返回错误 该软件尝试在 kafka 主题中推送一个案例类 然后我想使用 Spark Streaming 恢复它 这样我就可以提供机器学习算法并将结果保存在 mongo 实例中 Solved 我
  • 简单的数值表达式求解器

    首先 抱歉我的英语不好 对于我的算法和数据结构类的最后一个项目 我需要用 C 创建一个简单的数值表达式求解器 它需要解决简单的表达式 例如3 12 4 6 我设法拆分表达式并将运算符与数字分开 但我无法继续下去 诀窍是将运算符放在二叉树上
  • ELMAH:Elmah 页面未设计样式,使其难以阅读

    Setup 我通过 NuGet 在 ASP NET MVC 4 站点上安装了 ELMAH 在开发机器上 应用程序安装在根目录下 一切正常 并且样式与 ELMAH 页面通常一样 它总是这样做 我的意思是在开发机器上工作 不是吗 但在服务器上
  • PDFView printWithInfo:autoRotate: 失败

    我正在尝试打印一个由一系列图像构建的 PDF 文档 如果重要的话 我会在 Mozilla 插件中完成所有这些工作 我创建 PDFDocument 并将其放入 PDFView 然后调用 printView printWithInfo NSPr
  • Map.keySet 和 Map.values 上的迭代顺序相同吗?

    对于这样的地图 Map