- ベストアンサー
大きさがわからない配列
String型の配列で、文字列を格納していきたいのですが、 格納する文字列はいくつ来るかわかりません。 配列を大きさを確保しないで、どんどん文字列を 格納していくことはできますか? ブログのURLを格納するのですが、
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは Javaの配列の仕様上、一旦、作成したら変更はできません。もし、変更する場合には再度newして、新しい配列を作り直すしかありません。 そのため、今回のような不特定多数のデータを取り扱うには、java.utilパッケージにあるListインターフェースを利用します。インターフェースはそのままでは使えないので、実装したArrayList、LinkedListやVectorクラスを使用するでしょう(いずれもjava.utilパッケージのクラスです)。 これらのインターフェース/クラスには、toArrayという配列を取得するメソッドがありますので、配列がほしくなったら、このメソッドを利用します。 中抜けですが、実装イメージは、下の通りです。ご参考ください。 import java.util.*; // リストを用意する ArrayList list = new ArrayList(); // そのとき次第ですが、ループがあるとします。 while (true) { // なんか文字列をもらって、 String data = なんかの処理 // その文字列をリストに追加する list.add(data); } // 配列を使いたいと思った String[] strArray = null; // リストに詰め込んだ文字列分だけ用意する strArray = new String[ list.size() ]; // リストから配列に変換する list.toArray(strArray);
その他の回答 (1)
- ngsvx
- ベストアンサー率49% (157/315)
java.util.ArrayListを使ってください。
お礼
ありがとうございます!
お礼
ありがとうございます!! とても約に立ちました!