我有这个:
List<ForumCategories>? forumCategories;
var mainCats = List<ForumCategories>.empty(growable: true);
var subCats = <int, List<ForumCategories>>{};
这就是我所做的,以填充它:
for (var i = 0; i < forumCategories!.length; i++) {
if (forumCategories![i].main == 0) {
subCats[forumCategories![i].slave]?.add(forumCategories![i]);
}
}
而比我做的时候:
var size = subCats.length;
print("SUBCATS: $size");
输出始终为:SUBCATS: 0
Map上没有这个。知道为什么吗?
1条答案
按热度按时间b09cbbtk1#
因为您正尝试将项目添加到空List,请参见此处:
subCats[forumCategories![i].slave]
尚未存在于您的Map中,这就像您说:什么都不会发生。你需要用一个空的
List
来初始化它,如果它是null
的话,如下所示:现在,在将元素添加到该列表之前,它将找到要添加的空列表。