Mag*_*s W 2 collections dart flutter
我有一个List<String>,我想创建一个Set<String>与长度相同维度的方阵(二维数组/列表)List<String>.
我尝试使用
List.filled(entries.length, List.filled(entries.length, Set<String>()));
Run Code Online (Sandbox Code Playgroud)
但问题是,我的矩阵的每一行似乎都指向同一个列表实例,因此更改一行中的值也会更改所有其他行中的值。
所以我尝试了
List.filled(entries.length, List.from(List.filled(entries.length, Set<String>())));
Run Code Online (Sandbox Code Playgroud)
但我仍然有同样的问题。最终我投降并诉诸于
List<List<Set<String>>> matrix = [];
for(int i=0; i<entries.length; i++) {
List<Set<String>> row = [];
for (int n = 0; n<entries.length; n++) {
row.add(Set<String>());
}
matrix.add(row);
}
Run Code Online (Sandbox Code Playgroud)
它有效,但它很丑陋。有没有更干净的方法来做到这一点?
List.generate(n, (_) => List.generate(n, (_) => <String>{}));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1085 次 |
| 最近记录: |