gpt4 book ai didi

dart - Dart 使用错误的类型?

转载 作者:行者123 更新时间:2023-12-03 03:37:04 24 4
gpt4 key购买 nike

我是Dart的新手,想知道.cast()方法如何与动态类型和列表一起使用。

这是Flutter文档中的一个有效示例,说明如何在Dart中手动解析JSON:

List<Photo> parsePhotos(String responseBody) {
final parsed = json.decode(responseBody).cast<Map<String, dynamic>>();

return parsed.map<Photo>((json) => Photo.fromJson(json)).toList();
}

其中 responseBody是先前从HTTP端点获取的一些JSON数组。

我不明白为什么 json.decode(responseBody)的结果在逻辑上应为 Map<String, dynamic>时转换为 List<Map<String, dynamic>>。我已经调试了代码,实际上变量 parsed是一个列表子类型。

我这是怎么了?

提前致谢。

最佳答案

看起来是正确的。 castIterable的一种方法。尖括号中的类型是iterable中每个元素的类型。

https://api.dart.dev/stable/2.7.1/dart-core/Iterable/cast.html

关于dart - Dart 使用错误的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60132176/

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