1.使用var宣告變數,可賦予不同型別的值
Dart是一個強大的腳本類語言,可以不預先定義變數型別 ,自動會型別推導
Dart中定義變數可以通過var關鍵字可以通過型別來申明變數
var str='this is Dart var'; String str='this is Dart var'; int str=123;
注意: var 后就不要寫型別,寫了型別不要var;兩者都寫var aint = 5; 會報錯
2.未初始化時候,默認值未null
var a; print(a); a = 10; print(a); a = 'Hello Dart'; print(a);
輸出:
null 10 Hello Dart
3. 常量
final 和 const修飾符用來修飾常量
const值不變 一開始就得賦值 final 可以開始不賦值 只能賦一次 ;
而final不僅有const的編譯時常量的特性,最重要的它是運行時常量,并且final是惰性初始化,即在運行時第一次使用前才初始化 永遠不改量的量,請使用final或const修飾它,而不是使用var或其他變數型別,
3.1 使用final宣告一個只能賦值一次的變數(可以開始不賦值)

3.2 使用const宣告常量 使用const宣告的必須是編譯器常量 (一開始就要賦值)

4. 宣告變數的方式
var : 【編譯期】確定【變數型別】 dynamic : 【運行期】確定【變數型別】 bool int double String List Map
注意:
1.所有未初始化的變數的初始值為null,這是因為Dart將所有值都視為物件
2.var實際上是編譯期拋給我們的“語法糖”,一旦被編譯,
編譯期會自動匹配var 變數的實際型別,并用實際型別來替換該變數的申明,
這看上去就好像我們在編碼的時候是用實際型別進行申明的,
而dynamic被編譯后,實際是一個 object型別,
只不過編譯器會對dynamic型別進行特殊處理,
讓它在編譯期間不進行任何的型別檢查,而是將型別檢查放到了運行期,
main() { var a = 10; print(a);//10 // a = "dart"; //寫法錯誤 dynamic b = 20; print(b); //20 b = "JavaScript"; //正確 print(b); //JavaScript var list = new List<dynamic>(); list.add(1); list.add("hello"); print(list);//[1, hello] }
5.宣告常量的方式的區別
final :【運行期】確定【常量值】 const :【編譯期】確定【常量值】
注意: 1.final 不必須初始化,只能賦值一次,且不能修改值,賦值可以是常量也可以是變數, const必須初始化,只能賦值一次,且不能修改值,賦值必須是常量, 2.const必須根據可在編譯時計算的資料創建它們, const物件無法訪問運行時需要計算的任何內容, 1+2是一個合法的const運算式,但new DateTime.now()不是(合法的const運算式) 3.使用const關鍵字宣告的變數是隱式final的, 可以把const 常量賦給 final 變數,反過來不可以, 4.final和const可以與變數的資料型別一起使用,也可以與 var 關鍵字一起使用,
6.Dart 命名規則
1.變數名稱必須由數字、字母、下劃線和美元符($)組成, 2.注意:識別符號開頭不能是數字 3.識別符號不能是保留字和關鍵字, 4.變數的名字是區分大小寫的如: age和Age是不同的變數,在實際的運用中,也建議,不要用一個單詞大小寫區分兩個變數, 5、識別符號(變數名稱)一定要見名思意 :變數名稱建議用名詞,方法名稱建議用動詞
本文原創鏈接:https://www.cnblogs.com/jukaiit/p/12234921.html
Dart學習系列文章:https://www.cnblogs.com/jukaiit/category/1636484.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/1883.html
標籤:Dart
下一篇:php檔案加密解密
