3

今私は持っていArrayList<Integer>ます。
これ言うように、ArrayListには2つのremoveメソッドがあります。
整数2があり、POSITION 2(3番目の要素)の要素ではなく、そのリストのELEMENT 2を削除したい場合、Javaにそのように指示するにはどうすればよいですか?

4

2 に答える 2

8

これは、オートボクシングに関連する問題です。実際には、の場合T == Integer、2つのremoveメソッドがあります。

  • void remove(int index)
  • void remove(Integer object)

コンパイラに、オブジェクトベースの適切なバージョンをキャストするIntegerか、直接使用して、バージョンを選択するように強制しIntegerます。

list.remove((Integer)2);
list.remove(Integer.valueOf(2));
于 2013-03-18T03:43:11.707 に答える
0

public boolean remove(Object o)リストからオブジェクトを削除するには、メソッドを使用する必要があります。あなたの場合、あなたはステートメントを次のように書くべきですthis.remove(new Integer(2));

于 2013-03-18T03:49:48.920 に答える