整数列表以双列表Java 8并行流

时间:2016-02-03 10:46:39

标签: java

无法从Java Stream收集List以获取以下代码

public class BaseCLass {

    public static void main(String[] args) {
        BaseCLass base = new BaseCLass();
        List<Integer> ints = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        // Error While Assign
        List<Integer> doubleOfInt = ints.parallelStream().forEach(i -> base.doubleIt(i));
    }

    public int doubleIt(int i) {
        return i * i;
    }
}

2 个答案:

答案 0 :(得分:1)

应该是这样的

List<Double> doubleOfInt = ints.parallelStream().mapToDouble(i->i)
            .boxed().collect(Collectors.toList());

答案 1 :(得分:0)

然后收集它:

  

列出doubleOfInt = ints.parallelStream()。map(i - &gt; base.doubleIt(i))。collect(Collectors.toList());

但是:您的方法doubleIt不会使值加倍,而是将它们平方