2013-01-20 12 views
15

表示されている数字を追跡するためにArrayListに追加したい値があります。 値は整数なので、ArrayListを作成しました。整数のJava ArrayList

ArrayList<Integer[]> list = new ArrayList<>(); 
int x = 5 
list.add(x); 

ただし、このメソッドを使用してArrayListに何も追加できません。 配列リストに文字列を使用すると機能します。私はそれを文字列配列にして、何とか配列を整数に変換する必要がありますか?

EDIT:別の質問があります。 3つの値しか保持しないようにしたい。どうすればいい?

+1

ジェネリックで:リスト myList = new ArrayList (); – Spen

答えて

46

リストInteger

List<Integer> list = new ArrayList<>(); 
int x = 5; 
list.add(x); 
+4

ありがとう、それを見ていないために愚かな感じ。 – user1692517

+0

私は別の質問があります。 3つの値しか保持しないようにしたい。どうすればいい? – user1692517

+0

リストは動的に拡張可能な配列です。リストにn個の値を追加できます。 –

5

あなたは整数Integer[]の配列を受け取りArrayListに整数を追加しようとしています。それは

ArrayList<Integer> list = new ArrayList<>(); 

以上のArrayList自体は配列の一種であるとして、あなたは、リスト内のInteger[]配列を使用すべきではありません

List<Integer> list = new ArrayList<>(); 
+1

プログラミングについて、OP(または他の誰か)がインターフェイスに誘導するときは、[「インターフェイスにプログラムする」とはどういう意味ですか?」(http://stackoverflow.com/q/383947/1065197)を参照してください。 。 –

+0

「OP」とはどういう意味ですか?ほとんどどこでも見えますが、意味が分かりません – Hengameh

+0

オリジナルポスター/オリジナル出版社 –

0

でなければなりません。 []のままにしてください。

2

整数用のarraylistは作成していませんが、整数配列用のarraylistを作成しようとしています。

あなたのコードを置くだけでよい場合は、

List<Integer> list = new ArrayList<>(); 
int x = 5; 
list.add(x); 
0

実際、あなたの宣言は間違っていません。宣言でJVMは整数配列のArrayListを作成します。つまり、arraylistの各エントリは整数配列に対応します。したがって、add関数は整数配列をパラメータとして渡す必要があります。例について

:ArrayListのこの方法の最初のエントリに

list.add(new Integer[3]); 

は、最大3つの値に保持することができる整数配列です。

0

[]は、IntegerのArrayListを作成する時点では意味がありません。整数値を追加したいと思っているからです。 ArrayListを作成するには、

ArrayList<Integer> list = new ArrayList(); 

を使用すると動作します。