【Flutter/Dart】Listの基本的な使い方

List
目次

Listとは?

Listを使えば、複数のvalue(データ)を格納し、データ1つの固まり(コレクション)として操作できます。また格納したvalueを後から置き換えたり、追加したり、削除したりと自由にvalueを操作できます。

上のイラストは、5つのvalueが格納されたListをイメージしたものです。Listに格納されたvalueは左から順に数えていき、Listの先頭にあるvalueのindex(指数)を「0」とします。またListのvalueを最後尾から数える場合には、最後尾のindexを「-1」とし数えていきます。

Listの宣言

空のListの場合

//宣言
List<E> List名 = []; //空のList

上のようにListを宣言します。「E」に格納するvalueの型を代入します。

//例
List<int> numbers = []; //空のList

>> 【Dart】static変数とdynamic変数の使い方|型と宣言

初期値をListに与える場合

//例
List<int> numbers = [1, 2, 3];

初期値を与える場合は、上のようにListを宣言します。

valueを取得

//取得
List名[index];

宣言したListのvalueを取得するには、indexを使います。

//例
List<int> numbers = [1, 2, 3]; 
print(numbers[0]); // 1 が出力

valueの置き換え

//置き換え
List名[index] = value;

宣言したListのvalueを置き換えるには、indexを使います。

//例
List<int> numbers = [1, 2, 3]; 
numbers[0] = 10;
print(numbers[0]); // 10 が出力

基本となるプロパティ

  • first:Listの先頭のvalueを戻り値としてreturn
  • last:Listの最後尾のvalueを戻り値としてreturn
  • isEmpty:valueが無い場合はtrue/ある場合はfalseを戻り値としてreturn
  • length:Listの長さを戻り値としてreturn
  • reversed:Listのvalueの順番を逆にしたListを戻り値としてreturn

>> 【Dart】関数の使い方|定義・戻り値・引数・キーワード引数・アロー関数

first

List<int> number = [1, 2, 3];
print(number.first); // 1 が出力

last

List<int> number = [1, 2, 3];
print(number.last); // 3 が出力

isEmpty

List<int> number = [];
print(number.isEmpty); // true が出力

length

List<int> number = [1, 2, 3];
print(number.length); // 3 が出力

reversed

List<int> number = [1, 2, 3];
print(number.reversed); // [3, 2, 1]が出力

基本となるメソッド

  • add(value):Listの最後尾に新しいvalueを追加
  • addAll(List<E> value):Listの最後尾に新しいList型のvalueを追加
  • insert(index, value):Listの指定したindexにvalueを挿入
  • insertAll(index, List<E> value):Listの指定したindexにList型のvalueを挿入
  • remove(value):指定したvalueをListから削除(複数同じvalueがある場合、indexの低い方が削除されます)
  • removeAt(index):指定したindexのvalueをListから削除
  • removeLast():Listの最後尾のvalueを削除し、削除したvalueを戻り値としてreturn
  • clear():Listのvalueを全て削除(Listの長さは「0」になります)
  • indexOf(value):指定したvalueがあるindexを戻り値としてreturn(複数同じvalueがある場合、indexの低い方がreturnされます)
  • shuffle():Listのvalueをシャッフルします。

>> 【Dart】関数の使い方|定義・戻り値・引数・キーワード引数・アロー関数

add(value)

List<int> number = [1, 2, 3];
number.add(4);
print(number); //[1, 2, 3, 4]が出力

addAll(List<E> value)

List<int> number = [1, 2, 3];
number.addAll([4, 5, 6]);
print(number); // [1, 2, 3, 4, 5, 6]が出力

insert(index, value)

List<int> number = [1, 2, 3];
number.insert(0, -1);
print(number); // [-1, 1, 2, 3]が出力

insert.All(index, List<E> value)

List<int> number = [1, 2, 3];
number.insertAll(0, [-2, -1, 0]);
print(number); // [-2, -1, 0, 1, 2, 3]が出力

remove()

List<int> number = [1, 2, 3];
number.remove(2);
print(number); // [1, 3]が出力

removeAt(index)

List<int> number = [1, 2, 3];
number.removeAt(0);
print(number); // [2, 3]が出力

removeLast()

List<int> number = [1, 2, 3];
print(number.removeLast()); // 3 が出力
print(number); // [1, 2], 

clear()

List<int> number = [1, 2, 3];
number.clear();
print(number); // [] が出力

indexOf()

List<int> number = ['Apple', 'Banana', 'Chocolate'];
print(number.indexOf(1)); // Banana が出力

shuffle()

List<int> number = [1, 2, 3];
number.shuffle();
print(number); // 例)[2, 1, 3] データの順番がランダムになります。
よかったらシェアしてね!
目次
閉じる