JavaScript:
- var array = Lazy.range(1, 1000).toArray();
- console.log("First 10 squares that are evenly divisible by of 3:");
- var sequence = Lazy(array)
- .map(function(x) { return x * x; })
- .filter(function(x) { return x % 3 === 0; })
- .take(10)
- .each(function(x) { console.log(x); });
複製程式碼
Java 中類似的操作:
- int sum = shapes.stream()
- .filter(s -> s.getColor() == BLUE)
- .map(s -> s.getWeight())
- .sum();
複製程式碼
不過有人覺得這樣很醜,但也有人說這樣比較明確,就 Java 的調調而言,還是明確比較好,畢竟不會因為少了個 stream 呼叫,就讓 Java 變得不囉嗦一些…XD |