dart - Dart 有固定大小的数组吗?
问题描述
我正在编写一个使用 MidiNotes 的程序。每首歌曲都可以编程为根据固定大小的 128 位数组中的位 0 或 1 播放。
在 Dart 上,似乎只能创建期望动态大小列表的函数:
void something(List<bool> midiNotes)
这样,用户可以忘记设置 128 位,而只传递一个空列表或只有一个元素的列表。
解决方案
我会把这两个链接作为参考
https://api.dart.dev/stable/2.13.3/dart-core/List/List.html
https://api.dart.dev/stable/2.13.4/dart-core/List/List.filled .html
在你的情况下,我会推荐
const List<bool> myList = [/*...*/];
// just use const
但是,如果这不起作用,您可以使用它。
List 构造函数是这样的
List<E>([int? length])
如果你说类似
List<bool> fixedLengthList = List<bool>(10)
然后任何会改变List
's 长度的东西都会引发错误。
如果你想要类似的东西
List<bool> fixedLengthList = [true, true, true];
然后使用
List<bool> fixedLengthList = List<bool>.filled(3, true);
/// you can add growable: false if you want but it is useless
推荐阅读
- acumatica - 在 Acumatica 销售订单屏幕的“添加库存项目”对话框中添加列
- java - Mockito 在改变行为时调用一次模拟方法
- html - 视差布局和 z-index
- django - ReactJS/Django 项目:如何处理用户上传/观看的视频?
- regex - debezium 主题路由 3 表
- reactjs - 使用 React 返回,出现语法错误?
- c# - 显示 Ajax GIF 显示错误(类型未处理的异常)
- javascript - 未定义不是对象(评估“this.state.data.confirmed.value”)
- java - 在类路径资源 [resources/spring.xml] 中创建名称为“sassionFactory”的 bean 时出错:调用 init 方法失败
- html - 可编辑内容 - 聚焦和点击问题