gpt4 book ai didi

list - 从 dart :typed_data 追加到列表

转载 作者:行者123 更新时间:2023-12-02 17:39:43 26 4
gpt4 key购买 nike

Dart typed_data库包含很少的列表(例如 Uint8ListUint16List 等),它们比传统的 List 更有效。当您需要处理二进制数据时尤其方便。但是,所有这些列表都是固定大小的列表,因此在创建后无法扩展(或追加到列表)或缩小列表。当创建时结果列表的大小未知时,此限制会导致真正的问题。

考虑以下示例:

Uint8List getEven(Uint8List in)
{
Uint8List out = new Uint8List(0);

for (num i = 0; i < in.length; ++i)
{
if (in[i] % 2 == 0)
out.add(in[i]); // <- This will throw an exception since Uint8List is fixed-length
}

return out;
}

这个问题有解决方法吗,还是我必须使用 List<num>处理二进制数据,如果我需要追加/调整大小功能?

最佳答案

是的,内置 dart:typed_data 库中的列表是不可变的。

但是,还有一个额外的 typed_data酒吧上的软件包提供 mutable typed data implementations 。我想我还没有尝试过,但我希望它们(仍然)有效。

Uint8Buffer 相当于您正在查找的列表。

关于list - 从 dart :typed_data 追加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31089556/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com