同じオブジェクトに何回も命令するとき、超便利な書き方があります。
それが「カスケード演算子」
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;
.. を使うと、同じものへの命令がスッキリ連続で書けます!
まるで「それから、それから、それから…」と続けて話すような感じです 😊
