1. 程式人生 > >flutter學習之前置技術dart

flutter學習之前置技術dart

1.前置技術dart

​ 1.1 dart-hello word

void main(){
    print('hello word');
}

​ 1.2 dart-基礎資料型別

void main(){
    //關鍵字  num -- 定義資料型別 可以是 int 可以 是 double
    num a = 1;
    print(a);
    num b = 1.0;
    print(b);
    //也可以定義 int double
    int a1 = 1;
    print(a1);
    double b1 = 1.0;
    print(b1);
    //值給變數定義,不賦值dart中會統一的給 null
    int a2;
    print(a2) // null;
}

​ 1.2 dart - 引用資料型別,集合,map

void main() {
  //陣列,及集合的定義參考json格式
  List  list = [1,2]; //就是陣列的方式
  print(list);  //[1, 2]
  Map<String,dynamic> map = {'name':'zhangsan','age':18};   //dynamic 動態型別,不知道使用什麼宣告時使用dynamic
  print(map); //{name: zhangsan, age: 18}
}

​ 1.2 dart -自定義物件

void main() {
  //支援弱型別定義,同js一樣
    var student = new Student('zhangsan', 13);
    print(student);   //Instance of 'Student' 	進行了示例化
}
/**
 * final const 的區別
 *
 *  final 只能複製一次 ,定義時可以不賦值
 *  const 常量,定義時需賦值
 *  通俗的講: const 定義成王者段位,就一開始是王者,不可掉段,不可修改
 *  final 現在不是王者,定位賽還沒有打,打完後,就必須是王者,不可掉段
 *
 */
class Student {
 final String name;
 final int age;
 Student(this.name, this.age);
}

​ 1.3 dart-自定義物件列印

void main() {
  //支援弱型別定義,同js一樣
    var student = new Student('zhangsan', 13);
    print(student);   //Student{name: zhangsan, age: 13}
}

class Student {
 final String name;
 final int age;
 Student(this.name, this.age);

 @override
 String toString() {
   return 'Student{name: $name, age: $age}';	//物件中呼叫使用 $加變數名進行呼叫
 }
}

​ 1.4 dart-私有變數定義,方法定義

//dart中也支援 extends 繼承,私有的使用與java類似,方法的使用定義與java一樣
class Student {
 final String name;
 final int age;
 final String _sex;		//私有變數的定義為變數前加 _,
 Student(this.name, this.age, this._sex);
 @override
 String toString() {
   return 'Student{name: $name, age: $age}';
 }
}

​ 1.5 dart中的引用

import 'package:flutter/material.dart';
//匯入的檔案,dart結尾的檔案
//匯入的是檔案,不是類
//當檔案匯入後,檔案中定義的類,或者flutter中的Wight都可以使用