P G*_*iep 23
也许这是我在Google上为您找到的有趣内容:
流
Java流(不要与InputStream和OutputStream混淆)或多或少与LINQ相同,并行处理镜像PLINQ.但是,没有任何类似SQL的语法可以使用 - 你必须要做功能风格.正如LINQ需要扩展方法一样,直到Java 8才会出现流,因为它们需要使用defender方法来处理现有的集合类型.
Stream在很大程度上等同于.NET IEnumerable.要了解它们是如何相似的,请考虑以下示例:
// Write each value in a collection to standard output on a separate line:
// C# - LINQ
myCollection.ForEach( x => Console.WriteLine(x) );
// Java - stream
myCollection.stream().forEach( x -> System.out.println(x) );
// Sum all the values in a (potentially large) collection, using parallelism
// if possible:
// C# - PLINQ
int sum = myCollection.AsParallel().Aggregate( (x, y) => x + y );
// Java - parallel stream
int sum = myCollection.stream().parallel().reduce( (x, y) -> x + y );
Run Code Online (Sandbox Code Playgroud)
你可以期望stream()方法在Iterable上,就像LINQ在IEnumerable上运行一样,但它在Collection上.也许是因为Java缺乏yield-return语义,所以Iterable在Java中不那么有趣或有用.
来源:http://leftoblique.net/wp/2013/07/25/java-8-aka-oracle-finally-catches-up-to-net-framework-3-0/
编辑: 在Google上有很多可以找到它.以下是一些更有趣的文章:http: //blog.informatech.cr/2013/03/24/java-streams-preview-vs-net-linq/
| 归档时间: |
|
| 查看次数: |
6772 次 |
| 最近记录: |