配列に変換したい Arraylist があります。私はこれを使用しています:
double[] array = new double[list.size()];
double [] array = list.toArray(new double[list.size()]);
しかし、うまくいきません。どうすれば修正できますか?前もって感謝します。オブジェクトを返すようです。
List<Double>
aを aに変換するdouble[]
場合、またはプリミティブ型が必要な場合は、従来のループを実行する(またはGuava の などfor
の従来のループを実行するサードパーティ ライブラリ メソッドを呼び出す) 以外に方法はありません。for
Doubles.toArray
double[] array = new double[list.size()];
for (int i = 0; i < list.size(); i++) {
array[i] = list.get(i);
}
または、次のことができます
Double[] array = list.toArray(new Double[list.size()]);
とにかくDouble
あなたの目的には十分かもしれません。
List にプリミティブ型を含めることはできません。のインスタンスが含まれていると仮定するとDouble
、唯一の方法は、リストを反復処理して各要素のボックス化を解除することです (リストに null がないことを願っています)。
double[] array = new double[list.size()];
int i = 0;
for (Double d : list) {
array[i] = d;
i++;
}
そのはず:
Double[] array = new Double[list.size()];
list.toArray(array); // fill the array
プリミティブの配列が必要な場合は、配列内の各要素を反復処理します。
double[] array = new double[list.size()];
for(int i = 0; i < list.size(); i++) array[i] = list.get(i).doubleValue();