Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Dart中为多维列表编制索引时出现意外结果_Dart - Fatal编程技术网

在Dart中为多维列表编制索引时出现意外结果

在Dart中为多维列表编制索引时出现意外结果,dart,Dart,在索引多维列表时,我得到了一个奇怪的结果。以以下为例: void main(){ var multiList=new List.filled(4,new List.filled(4,“x”)); 打印(多列表); //[x,x,x,x],[x,x,x,x],[x,x,x],[x,x,x]] 多列表[2][1]=“A”; 打印(多列表); //[x,A,x,x],[x,A,x,x],[x,A,x,x],[x,A,x,x]] //预期结果: //[x,x,x,x],[x,x,x,x],[x,A,x,

在索引多维列表时,我得到了一个奇怪的结果。以以下为例:

void main(){
var multiList=new List.filled(4,new List.filled(4,“x”));
打印(多列表);
//[x,x,x,x],[x,x,x,x],[x,x,x],[x,x,x]]
多列表[2][1]=“A”;
打印(多列表);
//[x,A,x,x],[x,A,x,x],[x,A,x,x],[x,A,x,x]]
//预期结果:
//[x,x,x,x],[x,x,x,x],[x,A,x,x],[x,x,x]]
}
当我尝试用一个值替换索引[2][1]时,该值将被放置在所有子列表中

你知道为什么会这样吗?我怎样才能得到预期的结果呢


谢谢你的帮助

我认为您需要使用
生成
而不是
填充

var multiList=new List.generate(4,(i)=>new List.filled(4,“x”);

否则,只创建一个新列表。填充(4,“x”)并插入4次。如果您在内部列表中添加了非基本类型,那么也可以使用generate。

感谢您的快速响应!这解决了我的问题,解释也有道理。谢谢