如何从列表中的项创建逗号分隔的字符串

Bla*_*nka 3 dart

如果我在列表中打印值,它将如下所示:

main(List<String> arguments) {
  List cities = ['NY', 'LA', 'Tokyo'];
  String s = '';
  for(var city in cities)
    s += '$city, ';
  print(s);//NY, LA, Tokyo, 
}
Run Code Online (Sandbox Code Playgroud)

但我想用逗号分隔列表中的每个元素(不包括最后一个元素).

在Java中,我们可以像下面这样做:

List<String> cities = Arrays.asList("NY", "LA", "Tokyo");
System.out.println(cities.stream().collect(joining(", ")));//NY, LA, Tokyo
Run Code Online (Sandbox Code Playgroud)

在Dart我了如下:

main(List<String> arguments) {
  List cities = ['NY', 'LA', 'Tokyo'];
  print(formatString(cities));//NY, LA, Tokyo
}

String formatString(List x) {
  String formatted ='';
   for(var i in x) {
     formatted += '$i, ';
   }
  return formatted.replaceRange(formatted.length -2, formatted.length, '');
}
Run Code Online (Sandbox Code Playgroud)

Dart有没有更简单的方法?

Bla*_*nka 16

这就是我join()List以下方面的用法:

main(List<String> arguments) {
  List cities = ['NY', 'LA', 'Tokyo'];

  String s = cities.join(', ');
  print(s);
}
Run Code Online (Sandbox Code Playgroud)