Object Dart:如何将对象数组转换为哈希映射数组?

Object Dart:如何将对象数组转换为哈希映射数组?,object,dart,hashmap,flutter,Object,Dart,Hashmap,Flutter,我想将我的对象转换为hashmaps,这样我就可以使用颤振方法通道向Android发送数据 我曾想过一个接一个地遍历和映射它们,但必须有一种更优雅的方法来实现这一点 例如: 反对 class Something { Something(this.what, this.the, this.fiddle); final String what; final int the; final bool fiddle; } 其他地方 List<Something> listOS

我想将我的对象转换为hashmaps,这样我就可以使用颤振方法通道向Android发送数据

我曾想过一个接一个地遍历和映射它们,但必须有一种更优雅的方法来实现这一点

例如:

反对

class Something {
  Something(this.what, this.the, this.fiddle);
  final String what;
  final int the;
  final bool fiddle;
}
其他地方

List<Something> listOStuff = List<Something>.generate(10, (int index){
  return Something(index.toString(), index, false,);
});

List<Map<String, dynamic>> parseToMaps(List<Something> listOStuff){
  List<Map<String, dynamic>> results;
  // do something crazy to get listOStuff into Map of primitive values for each object
  // preferably a built in method of some sort... otherwise, i guess i'll just iterate...
  // maybe even an imported package if such thing exists
  return results;
}

List<Map<String, dynamic>> listOMaps = parseToMaps(listOStuff);
List listOStuff=List.generate(10,(int索引){
返回某物(index.toString(),index,false,);
});
List parseToMaps(List listOStuff){
列出结果;
//做一些疯狂的事情,让listOStuff成为每个对象的基本值映射
//最好是某种类型的内置方法…否则,我想我只需要迭代。。。
//如果存在这样的东西,甚至可能是一个进口包
返回结果;
}
List listOMaps=parseToMaps(listOStuff);

您可以使用
映射
并返回所需的对象:

    List<Map<String, dynamic>> listOMaps = listOStuff
            .map((something) => {
                  "what": something.what,
                  "the": something.the,
                  "fiddle": something.fiddle,
                })
            .toList(); 
List listomap=listOStuff
.map((某物)=>{
“什么”:什么,什么,
“the”:某物,
“小提琴”:某物,小提琴,
})
.toList();

我不确定您到底在寻找什么,但有一种方法可以对自定义对象进行编码,而无需在调用该方法时直接指定它

您需要做的是实现一个和/或,它定义了对象的编码和解码方式。最简单的方法可能是子类化和/或(可能足以覆盖StandardMessageCodec并将其传递给StandardMessageCodec)

如果您正确地实现了对象的读写,那么您所要做的就是将对象列表直接传递给您的方法调用,而flatter将处理编码


请注意,Android和iOS上有相应的类,您可以使用这些类将数据直接解码到对象中,事实上,您可能需要实现这些类才能使事情正常运行,具体取决于您的操作方式。

能否给出一个您正试图转换的对象的示例?更新了一个简单的示例Yeah,这就是我所说的迭代/映射方法。。。但是我想真的没有什么其他的了……老实说,我一直在寻找下面的答案,但是我写的问题完全符合这个答案,所以这是我对你的接受,好的先生,这将是完美的!你有我如何做到这一点的例子吗?可能是我上面给出的简单例子?