1. ホーム
  2. list

[解決済み] Dart: 0からNまでのリストを作成する

2022-10-10 11:12:55

質問

dartで連続した整数の範囲を簡単に作成するにはどうしたらよいでしょうか?例えば

// throws a syntax error :)
var list = [1..10];

どのように解決するのですか?

あなたは List.generateコンストラクタ :

var list = new List<int>.generate(10, (i) => i + 1);

代わりにジェネレータを使用することもできます。

/// the list of positive integers starting from 0
Iterable<int> get positiveIntegers sync* {
  int i = 0;
  while (true) yield i++;
}
void main() {
  var list = positiveIntegers
      .skip(1)   // don't use 0
      .take(10)  // take 10 numbers
      .toList(); // create a list
  print(list);   // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
}

Dart 2.3 以降では コレクションを :

var list = [for (var i = 1; i <= 10; i++) i];