1. 寫在前面
在上篇文章中介紹了Dart的基本資料型別中的陣列(list)和字典(Map),那么現在就繼續來學習 Dart的基礎語法中方法和函式是如何表示的吧,

【Flutter】蘋果Mac電腦配置flutter開發環境
【Flutter】 Android Studio 安裝第三方模擬器—網易MuMu
【Flutter】專案運行報錯Failed to find Build Tools revision 29.0.2
【Flutter】flutter doctor 報錯Android license status unknown. Run `flutter doctor --android-licenses‘
【Flutter】如何新建專案,運行你的第一個 flutter 工程專案
【Flutter】Dart中的var、final 和 const基本使用
【Flutter】Dart資料型別之num
【Flutter】Dart資料型別之String
【Flutter】Dart的資料型別list&Map(陣列和字典)
2. 補充一點內容
在 dart 中有兩個比較特殊的運算子,
- 賦值運算子
??= - 條件運算子
??
void operatorTest(){
// dart中的運算子
/*
* 賦值運算子 ??=
* 條件運算子 ??
*
*/
//舉例
var a;
a ??= 10;//當a沒有值的時候就賦值 10
print(a);
a ??= 5;
print(a);
a ??= 1;
print(a);
}
- 代碼運行結果

a初始化的時候沒有值,當已經賦值之后,后面再使用??=賦值就賦值不上了,因為此時a已經有值了,
結論: 如果a為nil就賦值,如果a有值了就直接回傳該值,并不會重新賦上新值,
- 條件運算子 ??
void operatorTest(){
// dart中的運算子
/*
* 條件運算子 ??
*/
var a;
a ??= 10;//當a沒有值的時候就賦值 10
var b ;
b = 5;
print(b ?? a);// ??當左邊有值就回傳左邊,否則回傳右邊
- 運行結果

- 回傳右邊值

3. 方法與箭頭函式
萬物皆物件,在
dart中,方法也是一個物件,回傳值和引數型別可以省略,當方法的執行陳述句只有一句的時候,可以使用箭頭函式 => 運算式
3.1 方法舉例
void main(){
functionTest();
}
void functionTest(){
print("我是 function");
}
- 運行結果

3.2 箭頭函式舉例
- 上面的可以改成這樣的,也是一樣的

- 舉例
void main(){
functionTest();
}
void functionTest() {
print(sum(10, 10));
}
// 求和方法
int sum (int a,int b){
return a +b ;
}
上面已經說過:回傳值和引數型別可以省略,那么變形如下:
// 求和方法
sum (a,b){
return a +b ;
}
但是不建議這么寫,不便于閱讀沒有必要,回傳值和引數型別省略了又只有一句話,又可以變成箭頭函式,return都可以直接不要了如下:
// 求和方法
sum (a,b) => a +b ;
- 運行結果

3.3 箭頭函式支持三目運算
void main(){
functionTest();
}
void functionTest() {
print(sum(10, 10));
}
// 求和方法
sum (a,b) => a == 10 ? a + b : a - b;
- 運行結果

4. 寫在后面
關注我,更多內容持續輸出
- CSDN
- 掘金
- 簡書
🌹 喜歡就點個贊吧👍🌹
🌹 覺得有識訓的,可以來一波 收藏+關注,以免你下次找不到我😁🌹
🌹歡迎大家留言交流,批評指正,
轉發請注明出處,謝謝支持!🌹
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/321296.html
標籤:其他
