2011-10-28 19 views
26

私は初心者ですので、何か助けが必要です。ArrayListにJavaを追加するJava

関連リストである抽象データ型Fooを文字列BのArraylistに変換しようとしています。どのようにリストをループし、各文字列を配列に追加しますか?

私はそれを考えすぎているかもしれませんが、私は今失われています。

ご協力ありがとうございます。

+4

は私たちにあなたが困難 – Steven

+1

@Stevenを持っているあなたのコードの部分を表示してください:完全に同意します。あなたが何をしているのかを知るのは難しいです。 – Akron

答えて

4

あなたが何か行うことができるはず:

ArrayList<String> list = new ArrayList<String>(); 
for(String s : foo) 
{ 
    list.add(s); 
} 
35

が新しいArrayListのインスタンス化:上のforループを使用して、データ構造の上に

List<String> myList = new ArrayList<String>(); 

反復(例えば、詳細をごコード):各要素(yourElement)について:

myList.add(yourElement); 
+2

最新バージョンのJavaでは、2回目にタイプを指定する必要はありません: 'List myList = new ArrayList <>();' –

1

まあ、あなたはあなたの抽象型Fooをラフにしてください。それは、そのオブジェクトで利用可能なメソッドに依存します。このオブジェクトはJavaで自動的に拡張されるため、ArrayListをループする必要はありません。 (他のプログラミング言語の配列と混同しないでください)

推奨読書。 Lists in the Java Tutorial

9

あなたが「foo」を呼ばれる文字列の配列リストを持っている場合、あなたは簡単に以下の方法を使用して、別のArrayListと、「リスト」に(追加)を追加することができます

ArrayList<String> list = new ArrayList<String>(); 
list.addAll(foo); 

そのように、あなたドン何かをループする必要もあります。助けのための

+0

addAllは私の場合はコレクションをとるため動作しません。 –

+0

あなたはどういう場合ですか?より具体的にしてください。 –

+0

say int [] foo = {1,2,3} addAllはこのようなパラメータを取らないので、コードはコンパイルされません。 JDK 1.7。 –

0

おかげで、私は私の問題を解決してきました:)ここでは他の誰がそれを必要とする場合のコードです:D

import java.util.*; 

public class HelloWorld { 


public static void main(String[] Args) { 

Map<Integer,List<Integer>> map = new HashMap<Integer,List<Integer>>(); 
List<Integer> list = new ArrayList<Integer>(); 
list.add(1); 
list.add(9); 
list.add(11); 
map.put(1,list);   

    int First = list.get(1); 
    int Second = list.get(2); 

    if (First < Second) { 

     System.out.println("One or more of your items have been restocked. The current stock is: " + First); 

     Random rn = new Random(); 
int answer = rn.nextInt(99) + 1; 

System.out.println("You are buying " + answer + " New stock"); 

First = First + answer; 
list.set(1, First); 
System.out.println("There are now " + First + " in stock"); 
}  
} 
} 
関連する問題