我正在使用Java 8迭代如下所示的地图forEach
Map<Integer,String> testMap = new HashMap<>();
testMap.put(1, "Atul");
testMap.put(2, "Sudeep");
testMap.put(3, "Mayur");
testMap.put(4, "Suso");
testMap.entrySet().forEach( (K)-> {
System.out.println("Key ="+K.getKey()+" Value = "+K.getValue());
System.out.println("Some more processing ....");
}
);
我的问题是:
forEach1)我们如何在映射中处理时提取方法?
2)也就是里面的部分代码forEach应该包裹在方法里面:
System.out.println("Key ="+K.getKey()+" Value = "+K.getValue());
System.out.println("Some more processing ....");
3)我理解forEach这种情况下的方法需要一个Consumer具有以下签名的功能接口 -
void accept(T t);
4)所以我想要的是这样的:
//declare a consumer object
Consumer<Map.Entry<Integer,String>> processMap = null;
// and pass it to ForEach
testMap.entrySet().forEach(processMap);
5)我们能做到吗?
红糖糍粑
慕工程0101907
凤凰求蛊
相关分类