• ベストアンサー

ArrayListに配列を入れることは出来ますか?

最近javaの勉強を始めました。 それで質問なのですが、ArrayListにString型の配列を入れれないでしょうか? また、Genericsはどうなるのでしょうか(取り出すときにキャストする方法でも)? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#86752
noname#86752
回答No.2

どんなことを試して、どんな風にダメだったのでしょう。 Genericsをご存知なら、素直にそのまま書いてみましたか?

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.1

せっかく勉強しているのですから、疑問に思ったらとりあえず試してみるようにしてみてはいかがですか?

kongdayo
質問者

補足

いろいろ試して見たのですが無理でした・・・ 配列の基本データ型(intのときはInteger)って事ですよね?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ArrayListに多次元配列

    ArrayListに多次元配列の変数を格納したのですが、取り出し方がわからず困っています。 ----------------------------------------------- String[][] str = {{"aaa","bbb","ccc","ddd","eee","fff"}, {"aaa","bbb","ccc","ddd","eee","fff"}, }}; ArrayList array = new ArrayList(); array.add(str[0]); array.add(str[1]); ----------------------------------------------- 上記の場合で、str[0][2];を取得する方法がわかりません。 java初心者なのでおかしな質問かもしれませんが、宜しくお願いします。

    • ベストアンサー
    • Java
  • ArrayListのキャスト

    JavaのArrayListについて質問します。 Class A extends OyaA の関係があります。 ArrayList<A> arrayA と ArrayList<OyaA> arrayOyaA で  arrayOyaA=(ArrayList<OyaA>)arrayA;  arrayA=(ArrayList<A>) arrayOyaA; のCastを行いたいとおもいます。コンパイルエラーになってしまいます。 Castする方法はありますでしょうか。 なければ上手くデータ変換する方法を教えてください。 何卒宜しくお願い致します。

  • ArrayListを使った多次元配列の作成について

    ArrayListで可変長配列を扱っているのですが、 2次元可変長配列を用いる必要が出てきたので、 下記のように変更したのですがうまくいきません。 何が悪いのか教えていただけませんでしょうか? ----------------------------------------- ArrayList cars=new ArrayList(); cars.add("フェラーリ"); cars.add("ポルシェ"); cars.add("メルセデスベンツ"); for(int i=0;i<cars.size();i++){  String str=(String)cars.get(i);  System.out.println(str);} ----------------------------------------- 上記から下記のように変更しました。 ----------------------------------------- ArrayList[] cars=new ArrayList[3]; cars[0].add("フェラーリ"); cars[0].add("ポルシェ"); cars[0].add("メルセデスベンツ"); for(int i=0;i<cars[0].size();i++){  String str=(String)cars[0].get(i);  System.out.println(str);} ----------------------------------------- エラーは「Exception in thread "main" java.lang.NullPointerException」です。 どうやら初期配列が10ではなく3となってしまっているようです。

    • ベストアンサー
    • Java
  • ArrayListの質問。

    ロジックの質問なのですが、、 ValueObjectクラス  private boolean flg = false;  private String strYMD; それぞれgetter/setter あらかじめ、aValの方にsetterで、20040626とセットします。 このオブジェクトをArrayListへaddしていきます。 ここで、String[] strYMDArray ={"20040623","20040626","20040622"}; という配列があります。 このとき、ArrayListの中身の要素数でループさせて、 配列strYMDArrayの日付と、ArrayList内のValueObjectの日付を比較し、同じであれば、 ValueObjectのflgをセットし、再度、ArrayListへつめなおしてやらなければなりません。 しかし、うまい方法を思い浮かべることができません。 どうか、うまい方法をおしえてくださいませんでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • Java
  • ArrayListの使い方がわかりません。(超初心者です。)

    情報管理用のクラス[Hito]を作成する。 プロパティ  String name double taijyu double sincho double nenrei ・メインクラスでHitoをArrayListに5つ格納し、それぞれの値を表示させるという課題に挑んでいます。 2週間前からjavaを勉強し始めたばかりで、ようやくオブジェクト指向や、クラスというものどんなものか多少イメージがわいてきた程度です。ArrayListについては配列と違い、格納するデータ数の数をはじめから決めなくてもいいというぐらいしかわかっていません。(これでさえ違うかも?)  どのように組みはじめばいいか、そしてArrayListはどのように使えばいいのか教えていただけますか? よろしくお願いします。

    • ベストアンサー
    • Java
  • ArrayList

    課題プログラムの中で、いくつかArrayListを使ったメソッドを作って動かすものが出題されているのですが、そのうち「ArrayListの文字を反転させて出力する」というのがわかりません。 何を使ったらよいでしょうか? ちなみに、私の書いたプログラムの中では、 ArrayList<String> list = new ArrayList<String>(); としていますので、それで書いて下さると嬉しいです。 また、課題の中で、listの中に入っているのは、String型のアルファベット10個です。 教えて下さい、よろしくお願いします。 ▼参考API http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/ArrayList.html

    • ベストアンサー
    • Java
  • ArrayListへの格納について

    お世話になります。 javaのArrayListについて質問ですが、とあるストリームデータがあり、それをArrayListに入れたいの ですが、区切り文字(\n)でaddできなくて困っております。ひとつのStringデータなどからaddするには どのように行えばいいのでしょうか。

  • ArrayListクラスを利用するプログラムについて質問があるのですが。

    「Genericsを用いたArrayListを使用しループ処理にはiteratorを使用する。 という指定の下、 ArrayListのインスタンスを生成し次の5つの文字列を追加した後、 for文を使ってリストの中身を全て順番に画面表示したいんです。 "AA" "BB" "CC" "DD" "EE" --------------------------- import java.util.ArrayList; class TestA{ public static void main(String args[]) { ArrayList<String> array = new ArrayList<String>(); array.add("AA"); array.add("BB"); array.add("CC"); array.add("DD"); array.add("EE"); } } --------------------------- ここからよく解らないので教えていただけませんでしょうか?

    • ベストアンサー
    • Java
  • (ソースコード有)ArrayListについて

    (ソースコード有)ArrayListに何でも入れられるのが問題と本に書いてあったのですがどういうことですか? package jp.rutles.sample; import java.util.ArrayList; public class MyJavaApp { static ArrayList data; public static void main(String[] args) { data = new ArrayList(); data.add(new MyObject("Hello")); data.add(new MyObject("Welcome")); data.add(new MyObject("Bye!")); addString("etc"); for(Object obj : data){ MyObject myobj = (MyObject)obj; System.out.println(myobj); } } public static void addString(String s){ data.add(s); } } 本ではこれを実行すると、 プログラム自体は問題がなくコンパイルして実行できるのですが、途中でエラーが発生して強制終了します。 その原因がaddStringというメソッドがdataフィールドにStringオブジェクトを保管するものだからだそうです。 mainメソッドではMyObjectを追加して中身をそのままforで出力しているだけですが、取り出したオブジェクトをMyObjectにキャストするところで、エラーになってしまうらしいです。(なんかこの文の文法が少し変な気はしますが本もこのようにかいていますw) addStringを呼び出すと、ArrayListにStringが追加されます。このStringを取り出してMyObjectにキャストしようとしたためにエラーになってしまった。らしいです。 まず 「mainメソッドではMyObjectを追加して中身をそのままforで出力しているだけですが、 取り出したオブジェクトをMyObjectにキャストするところで、エラーになってしまう。」 というのがよくわかりません。 そして 「addStringを呼び出すと、ArrayListにStringが追加されます。このStringを取り出してMyObjectにキャストしようとしたためにエラーになってしまった。」 これもよくわかりません。 ArrayListになんでも入れれることがなぜ問題なのかを知りたいので この本ではこのあとこれを上手に解決する方法として ジェネリックスというものを解説してくれているのですが これは使わないようにお願いします! すごく注文が多いのですが どなたか教えてくださいお願いします!

    • ベストアンサー
    • Java
  • ArrayListを使った多次元配列の比較方法

    JAVAでArrayListを使った多次元配列の要素を比較方法で困っています。 下記のコードで、アイテム、数量、金額をランダムに10個配列に追加しています。 private ArrayList<Item> list; public ArrayList<Item> getItems1() { return list; } public void setItems(ArrayList<Item> items) { getItems(); } public Inventory() { list = new ArrayList<Item>(); } public void getItems(){ for(int i =0; i<10; i++){ int theItemType = (int)(Math.random()*6+1); int theQut = (int)(Math.random()*20+1); int thePrice = (int)(Math.random()*40+101)/20; list.add(new Item(theItemType, theQut, thePrice)); } } public String getItemName() { if(itemType == 1){ return "シャツ"; } if(itemType == 2){ return "スカート"; } if(itemType == 3){ return "ズボン"; } if(itemType == 4){ return "ネクタイ"; } if(itemType == 5){ return "靴"; } if(itemType == 6){ return "靴下"; } return null; } public String toString() { return getItemName() + " , " + getQut() + " " + getPrice(); } 同じアイテム、金額の場合は、数量を合計して表示させたいです。例えば、配列の要素が下記のような場合、1つ目と2つ目の要素は同じアイテム、金額になるので、数量を20として表示させたいのですが、どのように比較していいのかわかりません。どなたか教えてください。よろしくお願いします。 靴下 , 4, 5 靴下 , 16, 5 ネクタイ , 3, 5 ネクタイ , 16, 6 ネクタイ , 2, 6 ズボン , 16, 6 ズボン , 15, 6 スカート , 3, 6 靴 , 17, 7 シャツ , 17, 7

    • ベストアンサー
    • Java