我有一个数组列表在另一个数组列表中,当我输入值时,前一个数组列表的值自动更改为最后输入的值。
代码如下
Question.class
data class Question(
var id: String,
var question: String,
var correct: String,
var answer: ArrayList<String>
)
主要活动
answers.add("1234")
answers.add("234")
questions.add(Question("1","1","1",answers))
Log.d("12345",questions.toString())
answers.clear()
answers.add("5678")
answers.add("789")
questions.add(Question("2","2","2",answers))
Log.d("12345",questions.toString())
o/p
D/12345:[问题(id=1,问题=1,正确=1,答案=[1234,234])]
D/12345:[问题(id=1,问题=1,正确=1,答案=[5678,789]),问题(id=2,问题=2,正确=2,答案=[5678,789])]
1条答案
按热度按时间7rtdyuoh1#
这里只有一个答案列表。每个问题都有一个对该列表的引用。相反,您应该为每个问题创建一个新的答案列表。为了更好地理解这一点,我建议您阅读Kotlin中的引用。