如何将arraylist <double>转换为int []

时间:2017-04-05 15:41:15

标签: android

我有一个arraylist,我想将这个数组列表转换为int []。 我怎样才能做到这一点? 这是我的功能,这个返回arraylist

globalClass.allTrips.get(extras.getInt("position")).getItemsCostCategory();

2 个答案:

答案 0 :(得分:0)

您可以通过分配与输入列表大小相同的int[]来执行此操作,然后将值从输入列表中逐个值1复制到结果列表,并转换为int as你走了。

ArrayList<Double> values = new ArrayList<Double>();
values.add(1.0);
values.add(2.0);
values.add(3.0);

int[] values2 = new int[values.size()];
for (int i = 0; i < values.size(); i++) {
  values2[i] = values.get(i).intValue();
}

答案 1 :(得分:0)

试试这个:

ArrayList<double> arrList = new ArrayList<double>();
arrList.add(2.5);
arrList.add(1.6);
double[] doubleArr = arrList.toArray(new double[arrList.size()]); // double arrayList to double[]
int[] intArr = new int[doubleArr.length]; // create int[] in the same size as the double[]
for (int i = 0 ; i < intArr.length ; i++ ) // fill the int[] with the double[] values ' of course with parse to int[]
{
    intArr[i] = (int)doubleArr[i];
}

但是当你将double解析为int时重新成员,你将失去你的小数值

1.6 =&gt; 1

2.5 =&gt; 2