如何在颤振中将字符串列表转换为字符串?

Pra*_*och 19 list converters dart flutter

我需要在飞镖中转换List<String>为 a String

我想从首选项中提取列表的值。我已经尝试过这个实现,但它只给了我最后一个值。

Future<List<String>> services = SharedPrefSignUp.getSelectedServices();
services.then((onValue){
  List<String>servicesList=onValue;
  selectServicesText=servicesList.join(",");
});
Run Code Online (Sandbox Code Playgroud)

Har*_*iya 32

如果你知道你有List<String>那么你可以使用join()颤振提供的功能。

    var list = ['one', 'two', 'three'];
    var stringList = list.join("");
    print(stringList); //Prints "onetwothree"
Run Code Online (Sandbox Code Playgroud)

简单而简短。;)

你可以像这样使用它:

 List<String>servicesList=["one", "Two", "Thee"]; 
 print(servicesList.join(""));
Run Code Online (Sandbox Code Playgroud)


Sai*_*k0s 17

您可以在这样的列表上使用reduce方法:

List<String> list = ['one', 'two', 'three'];
final string = list.reduce((value, element) => value + ',' + element);

// For your example:
List<String> servicesList = await SharedPrefSignUp.getSelectedServices();
selectServicesText = servicesList.reduce((value, element) => value + ',' + element);
Run Code Online (Sandbox Code Playgroud)


Rub*_*elo 16

您可以使用 StringBuffer 迭代列表和连接值

  var list = ['one', 'two', 'three'];
  var concatenate = StringBuffer();

  list.forEach((item){
    concatenate.write(item);
  });

  print(concatenate); // displays 'onetwothree'

  }
Run Code Online (Sandbox Code Playgroud)


Par*_*iya 16

如果你想将你的转换List<String>为 a coma septated String,你可以这样做

 List<String> list =["one", "Two", "Thee"];
 print(list.join(","));  // Output will be like this : one,Two,Thee
Run Code Online (Sandbox Code Playgroud)

Join()方法将每个元素转换为字符串并连接字符串。

  • 最好和最简单的解决方案 (3认同)

小智 9

以防万一有人想要连接对象列表中的特定成员字符串:这里有一种方法可以做到这一点 -

   string commaSeparatedNames=return listOfObjectsWithNameAttribute
      .map((item) => item.name)
      .toList()
      .join(",");
Run Code Online (Sandbox Code Playgroud)


niv*_*360 8

 print(list.toString().replaceAll('[', '').replaceAll(']',''))
Run Code Online (Sandbox Code Playgroud)