Final以及Const
在 Dart 中使用 final
以及 const
关键字来申明常量。使用 const
标识的变量是 final
的隐式类型,也就是说 const
也是一种 final
类型。
-
const
:在编译时确定的常量,不可用来标识实例变量 -
final
: 既可用来标识普通数据类型比如int
, 也可用来标识实例变量,比如一个自定义类的实例。
基本数据类型
Dart 的基本数据类型与 Swift 大概类似,略有不同的是 Rune
和 Symbol
类型。
-
Rune
: 由于Dart 中字符串以UTF-16为编码单元,因此如果要表示UTF-32 特殊字符需要特殊语法来支持,Rune
数据类型就是为了在 Dart 中支持 UTF-32 字符编码。Rune
表示 Unicode 编码的常用方法是,\uXXXX
, 这里 XXXX 是一个4位的16进制数。 例如,心形符号 (♥) 是 \u2665。 对于特殊的非 4 个数值的情况, 把编码值放到大括号中即可。 例如,emoji 的笑脸 (�) 是\u{1f600}
。 -
Symbol
:
一个 Symbol 对象表示 Dart 程序中声明的运算符或者标识符。 你也许永远都不需要使用 Symbol ,但要按名称引用标识符的 API 时, Symbol 就非常有用了。 因为代码压缩后会改变标识符的名称,但不会改变标识符的符号。 通过字面量 Symbol ,也就是标识符前面添加一个 # 号,来获取标识符的 Symbol 。例如:
#radix
#bar
Symbol 字面量是编译时常量。
网友评论