ArrayList(alal)とArrayList(al)のArrayListがあります。私はalalにalを挿入したいが、alal.get(0)にalが持つすべての要素に加えて100を加えたいと思う。これを行う最も簡単な方法は、最初に行うことだと思った。ArrayListの別のArrayListと比較される1つの追加要素を持つArrayListの作成
alal.add(al);
、その後は
alal.get(0).add(100)のように、それは0番目の要素のアクセス、及び100を追加します。
しかし、これに伴う問題は、それがオブジェクトののでalalそれが値基準とない保持するためのAlの内容も変更することです。
私は以下を試しました。これが正しい方法であるかどうか教えてください。改善を提案してください。
import java.util.ArrayList;
public class additionalal {
public static void main(String[] args) {
ArrayList<ArrayList<Integer>> alal = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> al = new ArrayList<Integer>();
al.add(1);al.add(2);al.add(3);
//WRONG
// alal.add(al);
// alal.get(0).add(100);
//CORRECT
ArrayList<Integer> alextra = new ArrayList<Integer>();
alextra.addAll(al);
alextra.add(100);
alal.add(alextra);
System.out.println(alal);
System.out.println(al);
}
}
になりますか? –
alal.get(0)がリストの内容を返すようにするには、要素0にal(実際にはコピー)を挿入する必要があります: 'alal.add(0、al)' –