我正在嘗試生成一個整數流,所以我創建了一個回傳 Stream 的靜態方法
在這里你可以找到方法:
public static Stream<Integer> multipleOf3(){
return Stream.iterate(1, x -> 3*x).limit(10);
}
但是這個方法回傳的不是三的倍數而是三的冪
我這樣呼叫方法:
multipleDe3().forEach(System.out::println);
我有這個結果:
1
3
9
27
81
243
729
2187
6561
19683
我認為迭代函式使用之前的結果,種子 = 1,所以 x = 1 然后:
3*1 = 3,
3*3 = 9,
3*9 = 27, etc...
因此,如果有人想在不使用先前結果的情況下計算倍數,請告訴我
uj5u.com熱心網友回復:
public static Stream<Integer> multipleOf3(){
return Stream.iterate(0, x -> 3 x).skip(1).limit(10);
}
public static void main(String[] args) {
multipleOf3().forEach(System.out::println);
}
輸出:3 6 9 12 15 18 21 24 27 30
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/371125.html
下一篇:資料幀更快的余弦相似度
