###概述java
var a = 10; print(a); //10 var b = "str"; print(b); //str 複製代碼
2.未被初始化,默認值爲null編程
var c ; print(c);//null 複製代碼
final d = "yxjie"; // d=10; //編譯器報錯 // d="str";//編譯器報錯 複製代碼
使用const申明的常量,爲編譯期常量bash
const a = 10 ; //不可變了
複製代碼
1.運算符:+,-,*,/,~/(整除),% 2.經常使用屬性:isNaN,isEvent (是不是偶數),isOdd(是不是奇數)等 3.經常使用方法:abs(),round(),toInt(),toDouble()markdown
//三種建立方式 var list=[1,2,3]; var list2=const[1,'yxjie',true]; var list3 = new List(); list3.add("hahah"); list3.insert(0, "yxjie"); list3.remove("yxjie"); list3.clear(); list2.forEach(print); 複製代碼
void main(){ var map={1:"Dart",2:"Java",3:"Kotlin",4:4}; var map2=const{1:"Dart",2:"Java",3:"Kotlin",4:4}; var map3=new Map(); map3[1]="hha"; map3["2"]="lalal"; print(map3.containsKey(2)); print(map); print(map.length); print(map.containsKey(1)); print(map.containsValue("java")); map3.forEach(pf); } void pf(key,value){ //差值表達式 print("key=\$key,value=\$value"); } 複製代碼
var list = [1,2,3,4]; for(var i = 0;i < list.length;i++){ print(i); } print('====='); for(var item in list){ print(item); } 複製代碼
var language = "Kotlin"; switch (language) { D: case "java": print("java---"); break; case "Kotlin": print("Kotlin---"); continue D; default: print("Dart"); } // 運行結果 //Kotlin--- //java--- 複製代碼
####方法特性閉包
//標準定義 void getPerson(String name,int age){ print("name=\$name,age=\$age"); } // 返回值參數類型均可以省略 getPerson2(name,age){ return "name=\$name,age=\$age"; } // 箭頭函數 getPerson3(name,age)=>"name=\$name,age=\$age"; 複製代碼
void main(){ getPerson("Yxjie"); getPerson("yxjie",age: 27); //輸出結果 //name=Yxjie,age=null //name=yxjie,age=2 getPerson2("Jerry"); getPerson2("jerry",18); getPerson2("Jerry",18,"boy"); //運行結果 //name=Jerry,age=null,gender=null //name=jerry,age=18,gender=null //name=Jerry,age=18,gender=boy } getPerson(name,{age}){ print("name=\$name,age=\$age"); } getPerson2(name,[age,gender])=> print("name=\$name,age=\$age,gender=\$gender"); 複製代碼
void main(){ getPerson("yxjie"); getPerson("yxjie",age: 28); //運行結果 //name=yxjie,age=18 //name=yxjie,age=28 } getPerson(name,{age=18}){ print("name=\$name,age=\$age"); } 複製代碼
void main(){ var fun=sayHello; fun(); //say hello!!! //方法做爲參數傳遞給另外一個方法 var list=["Java","Kotlin","Dart","Python"]; list.forEach(print); } sayHello()=>print("say hello!!!"); 複製代碼
void main() { var a = (s) { print("hello,\$s"); }; a("Yxjie"); //hello,Yxjie var list = ["a", "b", "c"]; print(listAddPre(list, addPre)); //[new a, new b, new c] print(listAddPre(list, (s) { return s * 3; }));//[new anew anew a, new bnew bnew b, new cnew cnew c] } addPre(s) => "new " + s; listAddPre(List list, addPre(s)) { for (var i = 0; i < list.length; i++) { list[i] = addPre(list[i]); } return list; } 複製代碼
void main(){ var fun=a();//與方法對象略微不同 fun();//0 fun();//1 } a(){ var count=0; printCount(){ print(count++); } return printCount; } 複製代碼