🔖

Flutter/Dart Listチートシート

2022/01/08に公開

Listチートシート

List型の便利なプロパティやメソッドをまとめました。

1. はじめに

開発環境は、下記のとおりです。

カテゴリ Ver.
Flutter 2.2.0
Dart 2.13.0

2. チートシート

よく使いそうなプロパティやメソッドをご紹介します。

カテゴリ プロパティ/メソッド名
配列が空かチェックする isEmpty
配列が空以外かチェックする isNotEmpty
配列の要素数を取得する length
配列に指定要素が含まれるかチェックする contains
配列の先頭の要素を取得する first
配列の末尾の要素を取得する last
配列から指定位置(インデックス)の要素を取得する elementAt
配列の指定要素のインデックスを取得する indexOf
配列の指定要素のインデックスを取得する indexWhere
配列に要素を追加する add
配列に複数の要素を追加する addAll
配列の指定の位置(インデックス)に要素を追加する insert
配列の指定の位置(インデックス)に複数の要素を追加する insertAll
配列から全要素を削除する clear
配列から指定要素を削除する removeAt
配列から指定条件の要素を抽出する where
配列を昇順にソートする sort

3.使い方

3.1. 配列が空かチェックする (isEmpty)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.isEmpty); // false

3.2. 配列が空以外かチェックする (isNotEmpty)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.isNotEmpty); //false

3.3. 配列の要素数を取得する (length)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.length); // 4

3.4. 配列に指定要素が含まれるかチェックする (contains)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.contains('Flutter')); //true
    print(tools.contains('Cordova')); //false

3.5. 配列の先頭の要素を取得する(first)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.first); //Flutter

3.6. 配列の末尾の要素を取得する (last)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.last); //Xamarin

3.7. 配列から指定位置(インデックス)の要素を取得する (elementAt)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.elementAt(0)); //Flutter

3.8. 配列の指定要素のインデックスを取得する (indexOf)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.indexOf('Flutter')); // 0
    print(tools.indexOf('Cordova')); // -1

3.9. 配列の指定要素のインデックスを取得する(indexWhere)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.indexWhere((element) => element == 'Flutter')); // 0
    print(tools.indexWhere((element) => element == 'Cordova')); // -1

3.10. 配列に要素を追加する(add)

   var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
   tools.add('Cordova');
   print(tools); //[Flutter, React Native, Ionic, Xamarin, Cordova]

3.11. 配列に複数の要素を追加する(addAll)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    tools.addAll(['Cordova', 'Unity']);
    print(tools); // [Flutter, React Native, Ionic, Xamarin, Cordova, Unity]

3.12. 配列の指定の位置(インデックス)に要素を追加する (insert)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    tools.insert(1, 'Cordova');
    print(tools); // [Flutter, Cordova, React Native, Ionic, Xamarin]

3.13. 配列の指定の位置(インデックス)に複数の要素を追加する(insertAll)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    tools.insertAll(1, ['Cordova', 'Unity']);
    print(tools); // [Flutter, Cordova, Unity, React Native, Ionic, Xamarin]

3.14. 配列から全要素を削除する(clear)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    tools.clear();
    print(tools); // []

3.15. 配列から指定要素を削除する(removeAt)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    tools.removeAt(1);
    print(tools); // [Flutter, Ionic, Xamarin]

3.16. 配列から指定条件の要素を抽出する (where)

    var tools = <String>['Flutter', 'React Native', 'Ionic', 'Xamarin'];
    print(tools.where((element) => element.contains('a'))); // (React Native, Xamarin)

3.17. 配列を昇順にソートする (sort)

    var tools = <int>[1, 5, 3, 2, 4];
    tools.sort((a, b) => a.compareTo(b));
    print(tools); // [1, 2, 3, 4, 5]
    
    tools.sort((a, b) => b.compareTo(a));
    print(tools); //[5, 4, 3, 2, 1]

4. 公式ドキュメント

もっと知りたい方は、Dartで用意されているプロパティやメソッドは、公式サイトに纏められています。
是非御覧ください。

https://api.dart.dev/stable/2.10.5/dart-core/List-class.html

Discussion