我正在尝试创建一个基本的for循环,将临时列表的元素添加到主ArrayList中。这导致我的Android应用程序反复崩溃。
for (int i = 0; i<tempFavList.size();i++){
Log.v("MyApp",Integer.toString(tempFavList.size()));
favourites.add(tempFavList.get(i).toString());
}
一些调试显示,在 for 循环被调用之前,
tempFavList.size()
等于 2,但是在 for 循环被调用时它变成了无限大(至少增加到 +500,000,然后应用程序崩溃)。列表 tempFavList
是使用代码 tempFavList = currentUser.getList("favourites");
从 Parse 数据库中提取的一个 List。我很困惑为什么临时列表的大小一旦调用 for 循环就会增加,因为我没有在 for 循环中添加任何项。任何帮助将不胜感激。
tempFavList.size()
和favourites.size()
,看看会得到什么。 - BabytempFavList
声明为tempFavList = favourites
。请注意,这个语句不会复制你的列表:这两个对象指向同一个引用,所以你添加到tempFavList
的所有内容也会被添加到favourites
中。 - BackSlashfavourites.size()
等于0,tempFavList.size()
等于2。@RichardLeMesurier:感谢您的提示。我尝试了这个,问题没有出现。这会让我认为这行是问题所在,但我仍然不清楚它的原因。 - moneymango