Dart程式設計 - 函式



函式是編寫可讀、可維護和可重用程式碼的基石。函式是一組用於執行特定任務的語句。函式將程式組織成邏輯程式碼塊。一旦定義,就可以呼叫函式來訪問程式碼。這使得程式碼可重用。此外,函式使程式程式碼更易於閱讀和維護。

函式宣告告訴編譯器函式的名稱、返回型別和引數。函式定義提供了函式的實際主體。

序號 函式及描述
1 定義函式

函式定義指定了如何完成特定任務。

2 呼叫函式

必須呼叫函式才能執行它。

3 返回函式值

函式還可以將值以及控制權返回給呼叫者。

4 帶引數的函式

引數是將值傳遞給函式的一種機制。

可選引數

當函式執行不需要強制傳遞引數時,可以使用可選引數。可以透過在其名稱後附加問號來標記可選引數。可選引數應設定為函式中的最後一個引數。

Dart中有三種類型的可選引數:

序號 引數及描述
1 可選位置引數

要指定可選位置引數,請使用方括號 []。

2 可選命名引數

與位置引數不同,傳遞值時必須指定引數的名稱。可以使用花括號 {} 來指定可選命名引數。

3 具有預設值的可選引數

函式引數也可以分配預設值。但是,這些引數也可以顯式傳遞值。

遞迴 Dart 函式

遞迴是一種透過函式反覆呼叫自身直到得到結果來迭代操作的技術。當需要在迴圈中反覆呼叫同一個函式並使用不同的引數時,遞迴最適用。

示例

void main() { 
   print(factorial(6));
}  
factorial(number) { 
   if (number <= 0) {         
      // termination case 
      return 1; 
   } else { 
      return (number * factorial(number - 1));    
      // function invokes itself 
   } 
}   

它應該產生以下輸出

720

Lambda 函式

Lambda 函式是表示函式的簡潔機制。這些函式也稱為箭頭函式。

語法

[return_type]function_name(parameters)=>expression;

示例

void main() { 
   printMsg(); 
   print(test()); 
}  
printMsg()=>
print("hello"); 

int test()=>123;                       
// returning function

它應該產生以下輸出

hello 123 
廣告