Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用流api打印HashMap值 HashMap任务=新建HashMap(); 任务。put(“名称”,1.0); 任务。put(“名称1”,2.0); commissions.keySet().stream().forEach(el->System.out.println(el));_Java_Api_Stream_Hashmap - Fatal编程技术网

Java 使用流api打印HashMap值 HashMap任务=新建HashMap(); 任务。put(“名称”,1.0); 任务。put(“名称1”,2.0); commissions.keySet().stream().forEach(el->System.out.println(el));

Java 使用流api打印HashMap值 HashMap任务=新建HashMap(); 任务。put(“名称”,1.0); 任务。put(“名称1”,2.0); commissions.keySet().stream().forEach(el->System.out.println(el));,java,api,stream,hashmap,Java,Api,Stream,Hashmap,这只打印键,如何打印映射的值呢?使用entrySet()(或者values(),如果需要的话)而不是keySet(): Map任务=newhashmap(); 任务。put(“名称”,1.0); 任务。put(“名称1”,2.0); missions.entrySet().stream().forEach(e->System.out.println(e)); 或 什么?……您可以直接传递方法引用,而不是创建lambda:forEach(System.out::println)。然而,这只是风格

这只打印键,如何打印映射的值呢?

使用
entrySet()
(或者
values()
,如果需要的话)而不是
keySet()

Map任务=newhashmap();
任务。put(“名称”,1.0);
任务。put(“名称1”,2.0);
missions.entrySet().stream().forEach(e->System.out.println(e));


什么?……您可以直接传递方法引用,而不是创建lambda:
forEach(System.out::println)
。然而,这只是风格的问题。是的,但在这种情况下,我不确定OP想要的是值还是条目——如果是后者,那么lambda将是一个更好的选择(因为您可能希望从
条目
)中获取键或值。我只是理解其背后的逻辑。它还与现有的JavaAPI保持一致@ΔλЛIDK,键=>
keySet()
,值=>
values()
,两者都=>
entrySet()
;不影响forEach的
。但正如我所说,这是一个时尚的东西,我只是想提一下。100%同意你的看法。我的想法是,既然问题已经得到了回答,我的回答将有助于寻找解决方案的人轻松找到答案。但我同意你的看法,我从你那里学到了一些东西,谢谢。请阅读,不要只回答密码。相反,请记住,你不仅要回答OP,还要回答任何未来的读者(特别是在回答3年前的问题时)。因此,请在回答中包含有关此代码工作原因的解释。
HashMap<String, Double> missions = new HashMap<>();
missions.put("name", 1.0);
missions.put("name1", 2.0);
missions.keySet().stream().forEach(el-> System.out.println(el));
Map<String, Double> missions = new HashMap<>();
missions.put("name", 1.0);
missions.put("name1", 2.0);
missions.entrySet().stream().forEach(e-> System.out.println(e));
HashMap<String, Double> missions = new HashMap<>();
missions.put("name", 1.0);
missions.put("name1", 2.0);
missions.entrySet().forEach(System.out::println);
name=1.0
name1=2.0
// Stores the values in a list which can later used

missions.values().stream().collect(Collectors.toList());
//print it to standard op

missions.values().forEach(val -> System.out.println(val));