Flutter 雑学「カスケード演算子」 で連続技!

同じオブジェクトに何回も命令するとき、超便利な書き方があります。
それが「カスケード演算子」

var button = ElevatedButton(onPressed: () {});
button.style = ButtonStyle(...);
button.enabled = true;
button.tooltip = 'クリックしてね';

何度も button. って書くの、面倒…
Dartのスマートな書き方:

var button = ElevatedButton(onPressed: () {})
  ..style = ButtonStyle(...)
  ..enabled = true
  ..tooltip = 'クリックしてね';

.. を使うと、「さっきのやつに続けて命令」という意味になります!

もっと実用的な例:
リストに色々追加するとき:

// 普通の書き方
List<String> fruits = [];
fruits.add('りんご');
fruits.add('バナナ');
fruits.add('みかん');

// カスケード演算子
List<String> fruits = []
  ..add('りんご')
  ..add('バナナ')
  ..add('みかん');

Flutter でよく見る使い方

TextEditingController controller = TextEditingController()
  ..text = '初期値'
  ..addListener(() {
    print('変更された!');
  });

おまけ: Paint で絵を描くとき

// すごく見やすい!
final paint = Paint()
  ..color = Colors.blue
  ..strokeWidth = 5.0
  ..style = PaintingStyle.stroke;

.. を使うと、同じものへの命令がスッキリ連続で書けます!

まるで「それから、それから、それから…」と続けて話すような感じです 😊