java设置Arraylist的Arraylist的值
你好,我想填写我的Arraylist of Arraylist,名为QuestionIdList_Section
为此,我制作了名为QUESTION_ID_Of_SectionId_Temp
的临时数组列表,在添加到QuestionIdList_Section
后,它将变得清晰
我的代码如下,以便您了解我是如何编写代码的:
public static ArrayList<String> QUESTION_ID_Of_SectionId_Temp = new ArrayList<String>();
public static ArrayList<ArrayList<String>> QuestionIdList_Section = new ArrayList<ArrayList<String>>();
QUESTION_ID_Of_SectionId_Temp.add("Hello");
QUESTION_ID_Of_SectionId_Temp.add("Hiii");
QuestionIdList_Section.add(0,QUESTION_ID_Of_SectionId_Temp);
Log.i(TAG, "******Before " + QuestionIdList_Section);
Log.i(TAG, "******Before "+ QUESTION_ID_Of_SectionId_Temp);
QUESTION_ID_Of_SectionId_Temp.clear();
Log.i(TAG, "******After " + QuestionIdList_Section);
Log.i(TAG, "******After " + QUESTION_ID_Of_SectionId_Temp);
在执行代码之后,我得到了两个变量的不同结果
详情如下:
******Before [[Hello, Hiiii]]
******Before [Hello, Hiiii]
******After [[]]
******After []
有人能帮我理解我在这里缺少什么吗。我想清除temp arraylist,这样我可以为UESTION_ID_Of_SectionId_Temp
设置不同的值,所以对于QuestionIdList_Section
的第二个索引,我将设置不同的值
提前谢谢
# 1 楼答案
QUESTION_ID_Of_SectionId_Temp
只是一个参考因此,如果清除它,
QuestionIdList_Section
中的值也将被清除你应该做的是
QUESTION_ID_Of_SectionId_Temp = new ArrayList<String>();
而不是
QUESTION_ID_Of_SectionId_Temp.clear();