美文网首页Dart
Dart - 类型声明(final和const)

Dart - 类型声明(final和const)

作者: LouisXWB | 来源:发表于2019-11-29 01:10 被阅读0次

    如果你不想更改变量的值,那么你可以用 final 和 const:

    final content = 'Dart 语法'; 
    static const bool switchOn = false;
    
    需要注意的点
    • 使用 finalconst 的时候可以把var省略,但并不是finalconst也是基本的声明变量类型。

    • finalconst 变量只能赋值一次,而且必须在声明的时候就赋值
      ⚠️
      在定义const常量时,你必须直接赋一个字面量,而不能是一个变量或者公式;
      在定义final常量时,如何赋值就无所谓了,但赋值后就不能再改了。

    • const 是隐式的 final

    • 在使用 const 的时候,如果变量是类里的变量,必须加static,是全局变量时不需要加,例如:

    import 'package:flutter/material.dart';
    
    const demoConst = 'demo'; // 这里不用加 static
    
    void main() => runApp(MyApp());
    
    class MyApp extends StatelessWidget {
    
        static  const content = 'Dart 语法'; // 这里必须加 static 
        ...
    }
    
    疑问:finalconst 有什么区别呢?

    const 是编译时常量,在编译的时候就初始化了,但是 final 变量是运行时才初始化。

    相关文章

      网友评论

        本文标题:Dart - 类型声明(final和const)

        本文链接:https://www.haomeiwen.com/subject/uhqwwctx.html