【问题标题】:add an element to 2d list using dart with add() method使用带有 add() 方法的 dart 将元素添加到 2d 列表
【发布时间】:2021-06-05 12:03:36
【问题描述】:

dart 1d 中的普通列表可以使用许多方法,例如 insert remove indexOf 等。但是在二维列表中,许多列表方法不能使用它?为什么下面是一个例子

var lista = [1,2,3,4,5] ; 
lista.add(6);
print(lista); 

工作正常

var listb = [[1,2,3],
[4,5]
];

listb.add(6); // 不会添加,因为不能将参数类型“int”分配给参数类型“List”。 只有当 listb.add([6]); 时才接受它但是将此作为新元素添加到列表中我只想在 [4,5] 中添加一个数字?!

【问题讨论】:

  • 您需要获取对要附加到的内部列表的引用,例如:listb[1].add(6)

标签: dart


【解决方案1】:

如果您想添加到列表的第二个列表,只需这样做:

void main() {
  var listb = [[1,2,3], [4,5]];
  
  listb[1].add(6);
  
  print(listb);
}

打印出来

[[1, 2, 3], [4, 5, 6]]

您希望第一个列表知道您想要添加到它的第二个元素。这不是编程的工作方式,编译器不会猜测您可能想要什么。你必须明确告诉它要做什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    • 2019-07-08
    • 1970-01-01
    • 2019-04-06
    相关资源
    最近更新 更多