Dart ListクラスのasMap()メソッドについてメモ書き。
asMap()メソッドはList型をMap型に変換するメソッド。インデックスをキーにする。
作成したMap型は変更できないので注意。コーディング時に文法チェックで引っ掛からない。
コーディングで確認。
void main() {
try {
final listTest = <dynamic>["Apple", "Orange", "Banana"];
// Map型に変換
final mapTest = listTest.asMap();
print(mapTest);
Map<int, dynamic> mapAdd = {3: "Rice", 4: "Potato"};
// 変換したMap型に要素を追加
mapTest.addAll(mapAdd);
print(mapTest);
} catch (e) {
print(e.toString());
}
}
1行目、List型をMap型に変換した結果。
2行目、変更したので例外が出力される。
{0: Apple, 1: Orange, 2: Banana}
Unsupported operation: Cannot modify unmodifiable map
コメント