1
Хотите узнать, что самый компактный способ глубокого копирования массива double [] [] в Java 8?Самый компактный способ глубокой копии double [] [] с Java 8
ТИА, Ole
Хотите узнать, что самый компактный способ глубокого копирования массива double [] [] в Java 8?Самый компактный способ глубокой копии double [] [] с Java 8
ТИА, Ole
Это один вкладыш (довольно некрасиво, хотя):
double[][] d = {{1,2},{3,4},{5,6}};
double[][] e = Arrays.stream(d).map(double[]::clone).toArray(double[][]::new);
System.out.println(Arrays.deepToString(e));
// [[1, 2], [3, 4], [5, 6]]
Alternate (запасной вариант) Решение:
double[][] e = Arrays.stream(d).map(a -> (double[])a.clone()).toArray(double[][]::new);
Sweet - это прекрасно. Благодаря! – Ole
Хммм - Получение ошибки: Описание \t \t Resource Path \t \t Расположение Тип Способ отображения (функции <супер двойной [] ,? расширяет R?>) В типе потока не применяется для аргументов (двойной []: : clone) \t ArrayMatrix.java \t/firefly-math-linear-real/src/main/java/com/fireflysemantics/math/linear/matrix \t строка 78 \t Проблема Java –
Ole
@ user1684269 Какую версию java вы используете? Он компилируется и запускается для меня в eclipse luna и хорошо компилируется из командной строки ('java, javac: 1.8.0_66') –