Dart 编程中的 final 关键字
Dart中的 final关键字用于创建本质上不可变的常量或对象。final和const关键字之间的唯一区别是final是一个运行时常量,这反过来意味着它的值可以在运行时分配,而不是我们在编译时为const关键字分配的值。
示例
考虑下面显示的例子-
void main(){ final int xy = 10; print(xy); }输出结果
10
在上面的例子中,我们用final关键字声明了一个int变量,这意味着分配给它的值不会改变。
示例
考虑下面显示的例子-
void main(){ final int xy = 10; print(xy); xy = 99; print(xy); }输出结果
Error: Can't assign to the final variable 'xy'. xy = 99; ^^ Error: Compilation failed.
与Dart中的任何普通变量一样,使用final关键字声明的变量也可以在 dartAnalyzer的帮助下推断它要存储的数据类型。
示例
考虑下面显示的例子-
void main(){ final name = "nhooo"; print(name); }输出结果
nhooo
现在让我们看看在运行时评估值的情况。
示例
考虑下面显示的例子-
void main(){ final squareOfTwo = getSquareOfNumber(2); print("SqaureOfTwo = $squareOfTwo"); } num getSquareOfNumber(num i){ return i * i; }
在上面的例子中,我们有一个main函数,其中的最终常量从一个将在运行时而不是编译时评估的函数中获取它的值。
输出结果
SqaureOfTwo = 4