0
我覺得我越來越側面。我正在嘗試利用Java parallelStream出於性能原因。Kotlin和parallelStream toArray
函數Specimen.pick()取樣並返回實例樣本。 我想用parallelStream將其替換成pool。
var pool: Array<Specimen> = Array(100_000) ..
這就是我想在科特林寫:
pool = pool.asList().parallelStream().map { Specimen.pick(pool, wheel, r.split()) }.toArray(Specimen::new)
其中關於::新
錯誤出相反,我必須兼顧來回清單之間數組:
pool = pool.asList().parallelStream().map { Specimen.pick(pool, wheel, r.split()) }.collect(Collectors.toList()).toTypedArray()
其中一期工程,但似乎浪費資源拉澤而不是直接進入Array。如果我讓的IntelliJ嘗試Kotlinize的這個Java示例:
的Java:
Person[] men = people.stream()
.filter(p -> p.getGender() == MALE)
.toArray(Person[]::new);
的IntelliJ轉型:
val men = people.stream()
.filter({ p -> p.getGender() === MALE })
.toArray(Person[]::new /* Currently unsupported in Kotlin */)
所以,也許這是未來的科特林?或者還有另一種更好的方法?