1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Flutter】Map型まとめ

Last updated at Posted at 2023-09-12

Map型とは

以下、公式より引用。

キーと値のペアのコレクション。関連付けられたキーを使用して値を取得します。


KeyとValueの組み合わせを、1つのオブジェクト内で管理することができ、Keyを基準にしてValueの取り出し、書き込みを自由に行うことができます。

Map型の宣言

他の変数の宣言と同様に、変数名の前にMap型を指定する必要があります。
Map型の場合、Keyの型とValueの型も一緒に宣言します。

final Map<String , dynamic> userData = {  //Map < Keyの型 , Valueの型 >
    "name" : "山田太郎",
    "age" : 24,
};

KeyとValueというワードを使用していますが、Map型の要素で:(コロン)の左にあたるところがKey、右側にあたるところがValueになります。

上記で宣言したMap型の変数は、<>の中で,(カンマ)区切りでStringとdynamicを渡しました。
これによって、KeyがString型、Valueがdynamic型のMap型変数が定義されます。

Map型の呼び出し

実際に、上記で宣言したMap型の変数を呼び出してみましょう。
変数名[Key]の形で、Valueを呼び出すことができます。

final Map<String , dynamic> userData = {
    "name" : "山田太郎",
    "age" : 24,
};

print(userData["name"]); // 山田太郎
print(userData["age"]); // 24

Map型のメソッド

List型などと同様に、Map型の変数に対してメソッドを繋げることで、変数の内容に変更を加えたり、データの確認などを行うことができます。

.addAll()

定義されているMap型の変数に、{Key : Value} を渡すことで、要素を追加することができます。

final Map<String, dynamic> userData = {
  "name": "山田太郎",
  "age": 24,
};

print(userData); // {name: 山田太郎, age: 24}

userData.addAll({"from": "東京", "height": 181, "weight": 70});

print(userData); // {name: 山田太郎, age: 24, from: 東京, height: 181, weight: 70}

.containsKey()

メソッドにわたしたKeyの存在確認を行い、結果のboolean型を返却してくれます。

final Map<String, dynamic> userData = {
  "name": "山田太郎",
  "age": 24,
  "from": "東京",
  "height": 181,
  "weight": 70,
};

print(userData.containsKey("name")); // true
print(userData.containsKey("namae")); // false

その他メソッドについては、以下公式をご参照ください。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?