0

ここに私がいます

class x{
    ArrayList<Double> values;
    x() {
        values= new ArrayList<Double>();
    }

//ここでは、class(x)のarraylis(values)を配列に変換して、プログラムで使用できるようにするメソッドを記述します。それを行う方法はありますか?あなたの助けのためのthx。

public double [] getarray(){

} 
4

4 に答える 4

2

ArrayListを配列に変換する必要はありませんが、変換する場合は、次のようにします。

public double [] getArray(){
    double[] array = new double[values.size()];
    for(int i =0;i<values.size();i++)
    {
        array[i] = values.get(i) != null ?values.get(i):  0.0;
    }
    return array;
} 
于 2012-04-21T20:51:44.000 に答える
1

配列リストにはtoArray()メソッドがあります。次のようなものを使用してみてください:

public double [] getarray(){
    return values.toArray();
} 
于 2012-04-21T20:44:14.947 に答える
1

Apache Commons Langの少しの助けを借りて(参照:) ArrayUtils.toPrimitive()

final ArrayList<Double> objList = new ArrayList<Double>();
final Double[] objArray = objList.toArray(new Double[objList.size()]);
final double[] primArray = ArrayUtils.toPrimitive(objArray);
于 2012-04-21T20:53:27.920 に答える
0

問題がそれをプリミティブに変換することであり、 Guavadouble[]使用できる場合は、問題なく機能します。(開示:私はグアバに貢献します。)double[] Doubles.toArray(Collection<Double>)

于 2012-04-21T22:56:27.183 に答える