2

我正在尝试使用 Dart 类型数据库中提供的列表。

我需要创建一个无符号 16 位数字的列表,但我不知道我需要预先将多少数字放入列表中。

Uint16List的API 页面说有一个构造函数:

工厂 Uint16List(int 长度)

创建给定长度的列表。如果提供了长度,则该列表是一个固定长度的列表,如果省略了长度,则该列表是一个空的可增长列表

(我的重点补充了。)

但是,长度参数不是可选的,并且尝试在不提供长度参数的情况下构造 Uint16List 会导致错误。

有没有办法创建一个可增长的 Uint16List(以及 Dart 类型数据库中的任何其他列表)?

4

1 回答 1

2

这似乎是文档中的错误。该描述继承自 List,不适用于 Uint16List。

如果您查看 Uint16List 的源代码文档,您将看到以下内容:

/**
 * A fixed-length list of 16-bit unsigned integers that is viewable as a
 * [TypedData]. For long lists, this implementation can be considerably
 * more space- and time-efficient than the default [List] implementation.
 */

对于构造函数:

/**
* Creates a [Uint16List] of the specified length (in elements), all
* of whose elements are initially zero.
*/

TypedData 中的所有其他列表也是固定长度的。

于 2013-08-18T16:21:03.480 回答