#dart #flutter
#dart #flutter
Вопрос:
Как я могу создать несколько объектов за 1 шаг в Dart? Что-то вроде:
Class Player{
var Health;
var Level; .... }
Где-то в другом месте:
Player[] player = new Player[20];
Как я могу это сделать в Dart?
Ответ №1:
Если вы хотите создать много «игроков»… Попробуйте это:
var players = List.generate(20, (i) => Player(/* properties */));
Заполнение из любого источника, вы можете использовать «i» в качестве индекса.
var players = List.generate(20, (i) {
var sourceRef = source[i];
return Player(
health: sourceRef["health"]
);
});
Комментарии:
1. Как я могу заполнить все значения для конкретного проигрывателя на вашем пути?
Ответ №2:
Вы можете создать список Player
, используя следующую строку:
List<Player> player = new List(20);
А затем инициализируйте каждый объект вашего player
списка :
for (var i in jsonResponse['participants']) {
player[x] = new Player() ; // add this to your code
var fill = player[x];
fill.health = i['health'];
x ;
}
Вы можете найти более подробную информацию о правильном способе создания и инициализации list
в официальной документации по Dart.
Комментарии:
1. Когда я пробую это таким образом, я получаю: Произошло исключение. Ошибка nosuchmetoderror (Ошибка nosuchmetoderror: параметр ‘profileIconId=’ был вызван в null. Получатель: null Пытался вызвать: level = 1301), когда я перебираю список объектов и пытаюсь ввести значения