Flutter-Dart 基础

2019-09-27  本文已影响0人  yanftch

理论上来说,学过 JS 、Java、Kotlin 的人,学习 Dart 不会有什么难度,以为他总结了动态语言和静态语言的特点。

1、Dart 属于是强类型语言 ,但可以用 var 来声明变量,Dart 会自推导出数据类型,var 实际上是编译期的“语法糖”。dynamic 表示动态类型, 被编译后,实际是一个 object 类型,在编译期间不进行任何的类型检查,而是在运行期进行类型检查。

2、Dart 中 if 等语句只支持 bool 类型,switch 支持 String 类型。

3、Dart 中数组List 是一样的。赋值参考 List,取值参考 数组

4、Dart 中不存在包装类。

5、Dart 文档注释建议使用 ///。

6、Dart 中 number 类型分为 int 和 double ,没有 float 类型。

7、Dart 中 级联操作符 可以减少对象调用,如下:

var list = <String>[]; /// String 数组/List
list..add("a")..add("b")..clear();

8、赋值操作符

A ?? "999";  /// 表示如果 A 为空,返回999
A ??= "999"; ///表示如果 A 为空,给 A 设置成 999
AA ~/999; ///A 对于 999 整除

9、可选方法参数, 类似于 Kotlin 中

 void setUser(String name, int age, {sex = "man"}){} /// sex 参数可传可不传
/// 调用
setUser("", 1, sex: "woman");
setUser("", 1);

10、作用域
Dart 没有关键词 public 、private 等修饰符,_ 下横向直接代表 private ,但是有 @protected 注解 。

11、构造方法

12、基本类型默认值都是 NULL,Dart 中所有的基础类型、类等都继承 Object ,默认值是 NULL, 自带 getter 和 setter

14、重载运算符

上一篇 下一篇

猜你喜欢

热点阅读