简化地图上的嵌套循环

时间:2019-08-23 15:54:37

标签: java for-loop nested-loops

我确定我不需要嵌套的内部循环,但是如何通过一个循环来实现,任何循环都可以,只是想摆脱嵌套循环。

for (List<GoogleUsageMapping> recordsMap : recordsGroupByMetadataId.values()) {
    for (GoogleUsageMapping record : recordsMap) {
        System.out.println(record.getUsage());
    }
}

1 个答案:

答案 0 :(得分:5)

没有办法摆脱它。

但是您当然可以隐藏。虽然它仍然是一个变相的嵌套循环。示例:

  tableHeader.getCell(0).setBackgroundColor('#BBB9B9');

recordsGroupByMetadataId.values() .stream() .flatMap(List::stream) .map(GoogleUsageMapping::getUsage) .forEach(System.out::println); documentation)将多个流放到一个大流中,这就是将嵌套循环展平为一个大循环的原因。