什么是记录类型以及如何以及何时在 dart 中使用它?

inn*_*ent 5 dart flutter

如何以及何时在 dart 中使用该Record类型以及使用它与其他集合类型(如地图、列表等)有什么区别?

另外,在Dart 文档中它指出记录是真实值,这是什么意思?

nvo*_*igt 8

记录不是“集合类型”。我认为这是非常误导的。

它基本上是一种非常简短且动态的方式来声明一个仅包含字段的类。

例如,({int r, int g, int b}) color这是一个类型的变量,具有三个类型为 int、namedrg的字段b

你本来可以上一堂课:

class Color {
   final int r;
   final int g;
   final int b;

   Color({this.r, this.b, this.g});
}
Run Code Online (Sandbox Code Playgroud)

这将达到相同的目的,只是需要更多的工作和更多的类定义。因为:

记录根据其字段的结构自动定义hashCode和方法。==

所以使用字段聚合是一种非常实用且节省时间的方法。或“数据持有者类”。它不能替代集合。集合是相同类型的不同数量的元素,记录是预定义数量的不同类型。