2016-02-03 25 views
-1

無法從Java流收集一覽表下列代碼整數列表以雙榜的Java 8並行流

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; 
    } 
} 
+3

您還沒有收集。你正在使用'forEach'。做你的文字說:)。 – Tunaki

+0

我需要收集doubleOfIntList中double的值 –

回答

0

然後就收集它:

List doubleOfInt = ints.parallelStream()。map(i - > base.doubleIt(i))。collect(Collectors.toList());

但是:你的方法doubleIt不加倍值,但它們廣場

1

它應該是這樣的

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