如何使用Lambda表达式调试stream()。map(...)?
在我们的项目中,我们正在迁移到Java 8,并且正在测试它的新功能。 在我的项目中,我使用Guava谓词和函数使用Collections2.transform和过滤和转换某些集合Collections2.filter。 在此迁移中,我需要将番石榴代码更改为java 8更改。因此,我正在做的更改是: List<Integer> naturals = Lists.newArrayList(1,2,3,4,5,6,7,8,9,10,11,12,13); Function <Integer, Integer> duplicate = new Function<Integer, Integer>(){ @Override public Integer apply(Integer n) { return n * 2; } }; Collection result = Collections2.transform(naturals, duplicate); 至... List<Integer> result2 = naturals.stream() .map(n -> n * 2) .collect(Collectors.toList()); 使用番石榴,我可以很轻松地调试代码,因为我可以调试每个转换过程,但是我关心的是例如如何调试 .map(n -> n*2)。 使用调试器,我可以看到一些类似的代码: …