Java 8 lambda hesabı kullanarak double[]
'u float[]
'a dönüştürmeye çalışıyorum. Şimdiye kadar, revize edilmesi gereken bir oyuncak metodu oluşturdum. İlkel dizileri dönüştürmek için yardım bulmaya çalışıyorum. Çoğunlukla, guava dönüşümden kurtulmak için bir yaklaşım var, çünkü Listeye dönüyor ve büyük diziler için çok ağır. Hiçbir uzman FloatStream
yokturİlkel diziler üzerinde Lambda
import com.google.common.primitives.Floats;
public static float[] doubleToFloat(double[] vector) {
Float[] f = Arrays.stream(vector).<Float>mapToObj(x -> (float) x).toArray(Float[]::new);
return Floats.toArray(Arrays.asList(f));
}
İlginçtir ki, Float için özel bir akış yok - sadece "IntStream", "DoubleStream" ve "LongStream" önceden tanımlanmış. 'Float' için, tüm bu işe yaramış işi yapmak zorunda olmanız belki de olabilir. – Makoto
Neden lambda hesabı kullanılarak yapılmalıdır? Deneme için –
@ pbabcdefp. Döngüden kurtulmanın düzgün bir yolunu bulmaya çalışın –