如何在Java6中将["campaign 1" => 255, "campaign 2" => 386, "campaign 3" => 736]
转换为Double数组?
ArrayList
如何将上面的列表转换为数组?
答案 0 :(得分:2)
您可以直接将List
转换为包装类的Array
。
请尝试以下方法:
List<Double> lst = new ArrayList<>();
Double[] dblArray = new Double[lst.size()];
lst.add(343.34);
lst.add(432.34);
dblArray = lst.toArray(dblArray);
答案 1 :(得分:0)
List<Number> lst = new ArrayList<>();
Collections.addAll(lst, 3.14, -42);
double[] dbl = lst.stream()
.map(Number::cast) // Or possibly Double::cast when List lst.
.mapToDouble(Number::doubleValue)
.toArray();
List<Double> lst = new ArrayList<>();
Collections.addAll(lst, 3.14, -42.0);
double[] dbl = lst.stream()
.mapToDouble(Double::doubleValue)
.toArray();
mapToDouble
将保持Stream
的对象转换为原始双打的DoubleStream
。
答案 2 :(得分:-1)
通过这个,您将列出并添加您喜欢的内容。然后使阵列大小相同,并从前到后填充。
public static void main(String[] args){
List lst = new ArrayList();
lst.add(343.34);
lst.add(432.34);
System.out.println("LST " + lst);
double[] dbl= new double[lst.size()];
int iter = 0;
for (Object d: lst
) {
double e = (double) d;
dbl[iter++] = e;
}
System.out.println("DBL " + Arrays.toString(dbl));
}
结果:LST [343.34,432.34] DBL [343.34,432.34]