当前位置: 首页 > 面试题库 >

我如何在地图上进行迭代 ?

鄢晔
2023-03-14
问题内容

我有一个Map<String, Person>(实际上,我使用的是更复杂的POJO,但是为了我的问题而简化了它)

Person 好像 :

class Person
{
  String name;
  Integer age;

  //accessors
}

我如何遍历此地图,打印出密钥,然后打印人名,然后打印人年龄,例如:

System.out.println(String.format("Key : %s Name : %s Age : %s", a, b, c));
  • A是Map < String ,Person> 的键
  • B是Person.getName()的名称
  • C是Person.getAge()的年龄

我可以使用.values()从地图中提取所有值,如HashMap文档中所述,但是我不确定如何获取键


问题答案:

那么entrySet()

HashMap<String, Person> hm = new HashMap<String, Person>();

hm.put("A", new Person("p1"));
hm.put("B", new Person("p2"));
hm.put("C", new Person("p3"));
hm.put("D", new Person("p4"));
hm.put("E", new Person("p5"));

Set<Map.Entry<String, Person>> set = hm.entrySet();

for (Map.Entry<String, Person> me : set) {
  System.out.println("Key :"+me.getKey() +" Name : "+ me.getValue().getName()+"Age :"+me.getValue().getAge());

}


 类似资料:
  • 问题内容: 我们正在尝试迭代,但没有成功。我们将问题简化为以下最小示例: 如果我们尝试迭代: 仅输出第一个条目: 我们所知道的替代方法甚至无法进入循环: 要么 都失败了,都只显示异常。(这可能与在引发“真实”异常时发生的异常有关,使我们无法知道发生了什么)。 我们正在使用最新稳定的jenkins(2.19.1),并将所有插件更新为今天(2016/10/20)。 是否有解决方案来迭代Jenkins管

  • 问题内容: 假设我正在遍历Java中的Map …我不清楚在遍历该Map的过程中我可以做什么。我猜我在Javadoc中对于Iterator接口remove方法的警告大多感到困惑: […]如果在迭代进行过程中以其他方式(而不是通过调用此方法)修改了基础集合,则未指定迭代器的行为。 我知道我可以毫无问题地调用remove方法。但是,在遍历Map集合时,我可以: 使用Map类put方法更改与键关联的值(使

  • 问题内容: 我有一个DataFrame熊猫来的: 输出: 现在,我要遍历该框架的行。对于每一行,我希望能够通过列名访问其元素(单元格中的值)。例如: pandas有可能这样做吗? 我发现了类似的问题。但这并不能给我我所需的答案。例如,建议在那里使用: 要么 但是我不了解对象是什么以及如何使用它。 问题答案: DataFrame.iterrows是产生索引和行的生成器

  • 问题内容: 我有一个DataFrame来自pandas的: 输出: 现在,我要遍历该框架的行。对于每一行,我希望能够通过列名访问其元素(单元格中的值)。例如: pandas有可能这样做吗? 我发现了类似的问题。但这并不能给我我所需的答案。例如,建议在那里使用: 要么 但是我不了解row对象是什么以及如何使用它。 问题答案: 是一个生成器,它同时生成索引和行(作为系列):

  • 问题内容: 所以我有一个json,我试图只获取活动用户的所有统计信息。当我尝试在for循环中执行以下操作时 它不起作用…但是只要没有记录,只要没有for循环就可以正常工作 这是我的html 这是我的js 这是一个演示链接http://jsfiddle.net/4kzzy/174/ 问题答案: 没什么复杂的,只是语法错误。 for循环需要这样写: 即没有多余的,没有多余的,也没有内部。 参见http

  • 问题内容: 我对groovy的了解并没有超出我对Jenkinsfiles的了解。我试图弄清楚是否有可能在Jenkinsfile中定义一个映射,然后可以以“ for循环”方式应用该映射。 我有这些变量: 我的Jenkinsfile中有一个如下所示的: 有没有办法为每个配对做一个舞台?我的尝试还没有运气。 问题答案: Jenkins文档中有一些类似的用户提交的示例。 这样的事情应该起作用: