14得票4回答
Java 8流的筛选和按相同昂贵方法调用分组

我希望找到一种干净的方法来优化Stream处理。 我有类似这样的东西:try (Stream<Path> stream = Files.list(targetDir)) { Map<String, List<Path>> targetDirFilt...

32得票3回答
如何在可迭代对象上执行流函数?

在Java 8中,Stream类没有任何方法可以包装一个Iterable。 相反,我从Iterable获取Spliterator,然后像这样从StreamSupport获取Stream:boolean parallel = true; StreamSupport.stream(splite...

65得票2回答
如何从List<Integer>获取IntStream?

我可以想到两种方法:public static IntStream foo(List&lt;Integer&gt; list) { return list.stream().mapToInt(Integer::valueOf); } public static IntStream b...

8得票3回答
Java 8扩展Stream<T>

我将尝试扩展Java 8的Stream实现。 我有以下接口: public interface StreamStuff&lt;T&gt; extends Stream&lt;T&gt; { Stream&lt;T&gt; delegate(); default Strea...

112得票1回答
如何使用新的1.8流API连接字符串

假设我们有一个简单的方法,应该将Person集合中所有人的姓名连接起来并返回结果字符串。public String concantAndReturnNames(final Collection&lt;Person&gt; persons) { String result = ""; ...

11得票2回答
使用Stream.collect(groupingBy(identity(), counting())对结果进行分组,并按值排序。

我可以将单词列表收集到一个袋子中 (也称为多集合):(参见链接)Map&lt;String, Long&gt; bag = Arrays.asList("one o'clock two o'clock three o'clock rock".split(" ")) ...

9得票5回答
有状态和无状态lambda表达式有什么区别?

根据OCP书籍,必须避免有状态操作,也就是有状态lambda表达式。书中提供的定义是,“有状态lambda表达式是指其结果取决于在管道执行过程中可能发生变化的任何状态。” 书中提供了一个例子,使用并行流和.map()函数将一组固定数字添加到同步ArrayList中。ArrayList中的顺...

8得票2回答
如何使用Java 8从对象列表中获取最小值和最大值

我有一个类似这样的类: public class Test { private String Fname; private String Lname; private String Age; // getters, setters, constructor, ...

23得票2回答
Java流排序2个变量升序/降序

我想对seq1进行升序排序,对seq2进行降序排序,所以我这样做:list = list.stream().sorted(comparing(AClass::getSeq1).thenComparing( AClass::getSeq2).reversed()).coll...

19得票1回答
如何将DoubleStream收集到List中

我有以下代码:Stream.of("1,2,3,4".split(",")).mapToDouble(Double::valueOf).collect(Collectors.toList()); 我想要返回List&lt;Double&gt;。 这段代码无法编译。 我发现了错误:Error...