どうも、ちょげ(@chogetarou)です。
配列であるリストのmapメソッドで、要素のインデックスを使う方法を紹介します。
方法

Listのmapメソッドでインデックスを使うには、collectionパッケージを使います。
まず、collectionパッケージをインポートします。
import 'package:collection/collection.dart';
そして、ListからmapIndexedメソッドを呼び出します。
mapIndexedメソッドの引数には、第1引数でインデックス、第2引数で値を受け取るコールバック関数を指定します。
また、mapIndexedメソッドのコールバック関数では、新しい値をreturnします。
var newList = list
.mapIndexed((index, value) => newValue)
使用例
import 'package:collection/collection.dart';
void main() {
var numbers = [1, 2, 3, 4, 5];
var newNumbers = numbers
.mapIndexed((index, value) => index + value)
.toList();
print(newNumbers); //[1, 3, 5, 7, 9]
}
コメント