Dart 方法的定義
- 必填帶參函數
- 選填帶參函數
- 默認參數函數(不傳就是默認值)
- 命名函數
- 匿名函數
- 方法作爲參數的函數
void main() { print('print是一種系統內置方法'); firstMethod(); secondMethod(); print(getPrint()); print(thirdMethod(100,200));//必填帶參函數 print(fourthMethod('小明'));//選填帶參函數 print(fifthMethod('小明','男'));//默認參數函數,不傳就是默認值 print(sixthMethod('小明',sex:'男',age:20));//命名參數 seventhMethod();//匿名方法 eightMethod(seventhMethod);//方法作爲參數傳遞 print(nineMethod(10));//箭頭函數 =>相當於return //閉包 讓一個變量既是全局變量,又能及時回收 var ten=tenMethod(); ten(); ten(); ten(); } void firstMethod(){ print('定義了一個方法'); } String getPrint(){ return '帶有返回值的方法'; } void secondMethod(){ void secondInMethod(){ print('方法內部嵌套方法'); } secondInMethod();//這裏必須在定義方法的下面調用,不然識別不到 } int thirdMethod(int x,int y){ return x+y;//必填帶參函數 } String fourthMethod(String name,[String sex]){ String sexs=sex??'性別爲空'; return '$name $sexs';//選填參數可以不傳 } String fifthMethod(String name,[String sex='女',int age]){ return '$name $sex $age';//默認參數可以不傳 } String sixthMethod(String name,{String sex='女',int age}){ return '$name $sex $age';//命名參數 } //匿名方法 var seventhMethod=(){ print('匿名方法'); }; eightMethod(metrhodName){ metrhodName(); } String nineMethod(int num)=>num>9?'大於':'不大於'; tenMethod(){ var x=100; return(){ x++; print(x); }; }