简体   繁体   English

Flutter Dart 从对象列表中获取字符串列表

[英]Flutter Dart get list of string from list of objects

I have a list of objects (City) that contains a lot of properties it's internal structure:我有一个对象列表(城市),其中包含很多属性,它是内部结构:

class City {
  String id;
  String name;
  String parent_id;
  double lat;
  double lng;
  String local;
}

how to get a list of names(Strings) from the same list of cities如何从同一城市列表中获取名称列表(字符串)

List<City> cities

how to get List<String> names from cities如何从城市获取List<String> names

Use map .使用map Tutorial here .教程在这里

For example:例如:

class City {
  const City(this.id, this.name);

  final int id;
  final String name;
}

List<City> cities = [
  City(0, 'A'),
  City(1, 'B'),
  City(2, 'C'),
];

final List<String> cityNames = cities.map((city) => city.name).toList();

void main() {
  print(cityNames);
}
List<String> names=[];

for (City city in cities){
names.add(city.name);
 }

It's simple and cumbersome though,虽然简单又麻烦,

var cityNames = cities.map((c) => c.name).toList().join(',');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM