You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Dart/Flutter中创建固定长度不可扩展的列表?

在Dart/Flutter中创建固定长度不可扩容的列表

要创建一个仅能容纳3个元素、不支持扩容的列表,Dart提供了几种直接的实现方式:

1. 使用List.filled构造函数

这是创建固定长度列表最直接的方式,你可以指定列表长度和初始填充值:

// 创建长度为3,所有元素初始值为0的固定长度列表
List<int> fixedList = List.filled(3, 0);

该列表长度固定为3,你可以修改现有索引位置的元素,但无法调用add()、remove()等会改变列表长度的方法,否则会抛出UnsupportedError。

2. 使用List.generate构造函数

如果需要根据索引动态生成初始元素,这个方法更适用,同样会生成固定长度列表:

// 创建长度为3,元素为"item 0"、"item 1"、"item 2"的固定长度列表
List<String> fixedList = List.generate(3, (index) => 'item $index');

3. 将可增长列表转为固定长度

如果已有一个可增长列表(比如用[]创建的),可以通过toList(growable: false)将其转换为固定长度版本:

List<double> growableList = [1.0, 2.0, 3.0];
// 转换为固定长度列表
List<double> fixedList = growableList.toList(growable: false);

需要注意:以上三种方式创建的列表均为固定长度列表,其长度在创建后无法更改,任何尝试扩容或缩容的操作都会触发错误。

内容的提问来源于stack exchange,提问作者Emirhan Selim Uzun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 20:55:17