Dart学习笔记03-声明变量

2020-08-07  本文已影响0人  zombie

1. 明确声明(Explicit)

 String name = 'wang';
 int age = 18;
 double height = 1.88;
 print('${name}, ${age}, ${height}');
 // 注意事项: 定义的变量可以修改值, 但是不能赋值其他类型
 String content = 'Hello Dart';
 content = 'Hello World'; // 正确的
 // content = 111; // 错误的, 将一个int值赋值给一个String变量

2. 类型推导(Type Inference)

2.1. var的使用

var的使用示例:

var name = 'wang';
// runtimeType用于获取变量当前的类型
print(name.runtimeType); // String

2.2. dynamic的使用

  dynamic name = 'wang';
  print(name2.runtimeType); // String
  name = 18;
  print(name2.runtimeType); // int

2.3 final const的使用

  final name = 'wang';
  name = 'james'; // 错误

  const age = 18;
  age = 20; // 错误
//  const是不可以赋值为DateTime.now()  
const time = DateTime.now(); // 错误  因为要执行函数才能获取到值

// final一旦被赋值后就有确定的结果, 不会再次赋值
final time = DateTime.now();
print(time);
sleep(Duration(seconds: 5));
print(time); // 两次time值相同

ps: 实例变量可以是final 类型但不能是const类型。 必须在构造函数体执行之前初始化 final 实例变量 。在变量声明中,参数构造函数中或构造函数的初始化列表中进行初始化。

上一篇下一篇

猜你喜欢

热点阅读