一、Functions 函數(shù)
Dart是一種真正的面向?qū)ο笳Z言,因此即使函數(shù)也是對象,并且具有類型Function。這意味著函數(shù)可以被賦值給變量或作為參數(shù)傳遞給其他函數(shù)。還可以像調(diào)用函數(shù)一樣調(diào)用Dart類的實(shí)例。詳情請參見可調(diào)用對象。
下面是一個實(shí)現(xiàn)函數(shù)的例子:
bool isNoble(int atomicNumber) {
return _nobleGases[atomicNumber] != null;
}
盡管Effective Dart建議將類型注釋用于公共api,但如果省略類型,該函數(shù)仍然可以工作:
isNoble(atomicNumber) {
return _nobleGases[atomicNumber] != null;
}
對于只包含一個表達(dá)式的函數(shù),可以使用簡寫語法:
bool isNoble(int atomicNumber) => _nobleGases[atomicNumber] != null;
=> expr語法是{ return expr; }的簡寫,=> 符號有時被稱為箭頭語法。
提示
在箭頭(=>)和分號(;)之間只能出現(xiàn)表達(dá)式。表達(dá)式計(jì)算為值。這意味著您不能在Dart需要值的地方編寫語句。例如,可以使用條件表達(dá)式,但不能使用if語句。在前面的例子中,_nobleGases[atomicNumber] != null;返回一個布爾值。然后該函數(shù)返回一個布爾值,該值指示atomicNumber是否屬于惰性氣體范圍。
1.定義
在Dart中,函數(shù)是用于執(zhí)行特定任務(wù)的可重復(fù)使用的代碼塊。一個函數(shù)由函數(shù)簽名和函數(shù)體組成。
1.1、函數(shù)簽名:
- 返回類型:指定函數(shù)返回值的數(shù)據(jù)類型。
- 函數(shù)名:標(biāo)識函數(shù)的名字。
- 參數(shù)列表:傳遞給函數(shù)的變量列表,可以為空。
1.2、函數(shù)體:
- 包含實(shí)際執(zhí)行的代碼塊,可以有多條語句。
- 可以使用return語句返回值。
2.基本語法
返回類型 函數(shù)名(參數(shù)類型1 參數(shù)名1, 參數(shù)類型2 參數(shù)名2, ...) {
// 函數(shù)體
// 可以有多條語句
// 可以使用 return 語句返回值
}