美文网首页
Dart 笔记 2 - 变量

Dart 笔记 2 - 变量

作者: 三流之路 | 来源:发表于2019-01-08 19:56 被阅读0次
    String name = 'Bob';
    var name2 = 'Bob';
    dynamic name3 = 'Bob';
    
    1. 可以显示声明类型
    2. var 声明变量而不指定类型,当被赋值后 Dart 本身会进行类型推断。类型一旦确定就不会改变
    3. 如果一个变量在以后会变化类型,比如原来是 String,后来又可能变成 int,用 dynamic 明确说明不需要任何类型

    未初始化的变量(即使是数字类型的变量)的值都为 null,因为 Dart 中一切都是对象。

    int lineCount;
    assert(lineCount == null);
    

    在生产环境中,assert() 调用被忽略。在开发环境中当 assert(condition)condition 条件不为真时抛出一个异常。


    使用 final 或 const 修饰的变量只能设置一次。

    const 变量是一个编译时常数。对于想要在编译时确定并且不再变的变量,使用 const。如果 const 变量位于类级别,则将其标记为静态 const。在声明该变量时,将该值设置为编译时常量,例如数字或字符串字面量、const 变量或常量数字算术运算的结果:

    const bar = 1000000; 
    const double atm = 1.01325 * bar;
    

    const 关键字不只是声明常量变量。还可以用它来创建常量值,以及声明创建常量值的构造函数。任何变量都可以赋一个常量值。

    var foo = const [];
    final bar = const [];
    const baz = []; // 可以从 const 声明的初始化表达式中省略 const
    

    可以更改一个非 final 的非 const 变量的值,即使它曾经有一个 const 值:

    foo = [1, 2, 3]; // Was const []
    

    但不能改变 const 变量的值:

    baz = [42]; // Error: Constant variables can't be assigned a value.
    

    相关文章

      网友评论

          本文标题:Dart 笔记 2 - 变量

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