当前位置: 首页 > 面试题库 >

在dart中将元素插入列表的开头

陶博涉
2023-03-14
问题内容

我只是在Flutter中创建一个简单的ToDo应用。我正在管理列表中的所有待办事项。我想在列表的开头添加任何新的待办事项。我能够使用这种解决方法来实现这一目标。有什么更好的方法吗?

void _addTodoInList(BuildContext context){
    String val = _textFieldController.text;

    final newTodo = {
      "title": val,
      "id": Uuid().v4(),
      "done": false
    };

    final copiedTodos = List.from(_todos);

    _todos.removeRange(0, _todos.length);
    setState(() {
      _todos.addAll([newTodo, ...copiedTodos]);
    });

    Navigator.pop(context);
  }

问题答案:

使用insert()of的方法List添加项目,这里的索引将是0在开头添加项目。例:

List<String> list = ["B", "C", "D"];
list.insert(0, "A"); // at index 0 we are adding A
// list now becomes ["A", "B", "C", "D"]


 类似资料:
  • 问题内容: 假设我有一个这样的Python清单: 我想在每个第n个元素后插入一个“ x”,比方说该列表中的三个字符。结果应为: 我知道我可以通过循环和插入来做到这一点。我实际上正在寻找的是Pythonish方式,也许是单线? 问题答案: 我有两个一线客轮。 鉴于: 使用获得指数,增加每3次字母, 如 :,然后连接成字符串和它。 [‘a’, ‘b’, ‘c’, ‘x’, ‘d’, ‘e’, ‘f’,

  • 可变列表可以在运行时动态增长。 List.add()函数将指定的值附加到List的末尾并返回修改后的List对象。 下面说明了相同的内容。 void main() { List l = [1,2,3]; l.add(12); print(l); } 它将产生以下output - [1, 2, 3, 12] List.addAll()函数接受以逗号分隔的多个值,并将这些

  • 如何将项目插入到特定索引的列表中?不使用: 帮助!

  • 我需要在一个映射中插入一些数据,该映射需要一个字符串作为键,一个字符串列表作为值,但我不知道怎么做。 这是我试图做的。 首先,我创建了一个HashMap,然后创建了一个新对象,现在出现了问题。 我创建了一个新的字符串列表,给它起了一个名字,然后我认为我必须使用“put”方法,但这是错误的,因为我有一个错误,告诉你:“方法put(String,List)在类型HashMap中 为什么是布尔值?当我在

  • 更新:这里的问题是本机MongoDB驱动程序需要与Mongoose不同格式的objectID。我需要做的不是{_id:story_id},而是{_id:new mongoose.types.objectid(story_id)}。它只返回这两个字段的原因是它正在创建一个带有{_id:story_id}的新文档,而不是更新{_id:{$oid:story_id}}的文档。然而,我最初使用本地驱动程序

  • 问题内容: 我正在使用原始html和JQuery讨论一些想法。我所做的一件事是创建一个包含一组行的表元素。 但是,当我在FireFox + Firebug,IE8开发人员工具栏或Google Chrome JavaScript调试器中查看代码时,所有这些都表明在所有 tr* 节点周围都存在一个 tbody 元素。 * 我不反对这种情况……但这是标准行为吗? 问题答案: TBODY元素定义表中的一组

  • 我有一个数字列表L。还有另一个数字列表M。我需要返回一个在L和M中找到的数字列表L。 编辑:从数学上讲,我正在寻找多集交点。 例子: L=3,,4,,5,,,6 M=,7,,,,1 L'=9,1,2,1 我为此编写了以下代码: 虽然它达到了目的,但我想知道是否有一种惯用的Perl6方法可以做到这一点? 一些背景:我一直在尝试一起学习Perl6和Python,并用这两种语言解决相同的难题。Pytho

  • 回应。身体看起来像: 响应Upcoming.body看起来像: 我得到的错误是:String,dynamic不是