Флаттер манипулирует строками

#string #flutter

#строка #флаттер

Вопрос:

Я пытаюсь понять flutter и создать тестовое приложение. В моем приложении должна быть строка со следующим выводом:

Макс Смит, Джон Траволта, Сара Коннер

У меня есть список со следующими записями:

[Макс Смит, Джон Траволта, Сара Коннер]

Я придумал этот метод:

 Widget friendsList(){
      return new Wrap(children:
      marked_friends.map((item) =>
      new Text(item   ", ")).toList()
      );
    }
  

После вызова метода в моем приложении отображается следующая строка:

Мэй Смит, Джон Траволта, Сара Коннер,

Есть идеи о том, как убрать запятую в конце?

С наилучшими пожеланиями

Комментарии:

1. Не могли бы вы показать нам свой Profile класс?

2. Я решил это прямо в эту секунду 🙂 В любом случае спасибо! Остается только проблема с запятой в конце строки… Есть идеи по этому поводу? Вам все еще нужен мой класс Profile для этого? Фигурные скобки и профили удалены

Ответ №1:

Вам просто нужно проверить, является ли текущий элемент последним элементом в вашем списке:

Text(item (marked_friends.last == item ? '' : ', '))).toList()

Полный фрагмент кода будет выглядеть следующим образом:

 return Wrap(
    children: marked_friends
        .map((item) => Text(item   (marked_friends.last == item ? '' : ', ')))
        .toList());
  

Я также удалил ненужные инструкции new 😉

Источник: троичный (?) оператор

Комментарии:

1. В вашем решении не отображается ничего, кроме одной запятой… Ни одного элемента, только запятая.

2. Извините, не хватало некоторых фигурных скобок: D Я отредактировал сообщение.