2017-04-04 26 views

回答

4

一旦你mapii*i你失去原來的i

您可以刪除map並做forEach內的計算:

IntStream.rangeClosed(0, 4).forEach(i -> System.out.println(i + ": " + i*i)); 
+0

謝謝非常簡短和清楚的解釋,當然你的答案。 – RedSea

4

或者你可以做這樣的(映射到按鍵的Pair /值):

IntStream.rangeClosed(0, 4) 
     .mapToObj(i -> new AbstractMap.SimpleEntry<>(i, i * i)) 
     .forEach(System.out::println); 
+0

非常好的選擇。如果計算不像i * i那樣簡單,這可能是正確的解決方案。非常感謝你。 – RedSea