PL
Java - przekonwertuj double[] na List<Double> - pierwotna podwójna tablica na listę obiektów
6 points
Opis problemu
xxxxxxxxxx
1// Mamy:
2double[] arr = {1.2, 2.7, 3.9};
3// Chcemy przekonwertować tę tablicę na listę:
4List<Double> list; // [1.2, 2.7, 3.9]
xxxxxxxxxx
1
double[] arr = {1.2, 2.7, 3.9};
2
List<Double> list = DoubleStream.of(arr).boxed().collect(Collectors.toList());
3
System.out.println(list); // [1.2, 2.7, 3.9]
Wynik:
xxxxxxxxxx
1
[1.2, 2.7, 3.9]
Zwrot wymaganej implementacji np ArrayList
lub HashSet
xxxxxxxxxx
1
double[] arr = {1.2, 2.7, 3.9};
2
ArrayList<Double> list = DoubleStream.of(arr).boxed()
3
.collect(Collectors.toCollection(ArrayList::new));
4
System.out.println(list); // [1.2, 2.7, 3.9]
Wynik:
xxxxxxxxxx
1
[1.2, 2.7, 3.9]
xxxxxxxxxx
1
double[] arr = {1.2, 2.7, 3.9};
2
List<Double> list = new ArrayList<>();
3
for (double no : arr) {
4
list.add(Double.valueOf(no));
5
// we can also just add primitive double
6
}
7
System.out.println(list); // [1.2, 2.7, 3.9]
Wynik:
xxxxxxxxxx
1
[1.2, 2.7, 3.9]
xxxxxxxxxx
1
double[] arr = {1.2, 2.7, 3.9};
2
List<Double> list = Doubles.asList(arr);
3
System.out.println(list); // [1.2, 2.7, 3.9]
Wynik:
xxxxxxxxxx
1
[1.2, 2.7, 3.9]
xxxxxxxxxx
1
double[] arr = {1.2, 2.7, 3.9};
2
Double[] doubleArray = ArrayUtils.toObject(arr);
3
List<Double> list = Arrays.asList(doubleArray);
4
System.out.println(list); // [1.2, 2.7, 3.9]
Wynik:
xxxxxxxxxx
1
[1.2, 2.7, 3.9]
- Najlepsze rozwiązanie -
DoubleStream.of
(Java 8) DoubleStream.of
+ zwrot ArrayList (Java 8)- Jawna iteracja po tablicy (before Java 8)
Doubles.asList
(Guava)ArrayUtils.toObject
(Apache commons lang3)