Flutterにおいて、final
とconst
は両方とも変数を定数にするために使用されますが、微妙に異なる使い方があります。
final
: 実行時に値を割り当てる必要があり、その後に変更できない変数を定義する場合に使用されます。final
変数は実行時に評価され、初期化時に値が割り当てられますが、初期化以降に変更することはできません。つまり、実行時に値が決まる場合に使用します。const
: コンパイル時に評価される必要がある場合に使用されます。const
変数は定数であり、実行時に評価されません。コンパイル時に評価されます。つまり、値がコンパイル時に決定される場合に使用します。また、const
を使用すると、アプリのパフォーマンスが向上する可能性があります。
例えば、以下のような定数の定義にはfinal
とconst
があります。
final int myFinalInt = 10;
const int myConstInt = 20;
myFinalInt
は実行時に値が決まり、変更できない変数です。myConstInt
はコンパイル時に評価され、変更できない定数です。
コメント