函式是 dart程式執行的基本單元
一、main函式
main函式是應用的入口。每乙個應用都必須有乙個main函式作為入口。main函式沒有返回值。main函式的引數可以為空(啥都不寫),也可以有乙個 list型別的變數
void main()
void main(listargs)
// 執行命令 dart test.dart hello world
// 結果: [hello, world]
二、內建函式
內建函式也就是dart自帶的api函式,如:print()
void main()
三、可選引數函式
1.dart定義可選引數有兩種方式一種使用{}
, 另一種使用。區別就是, 如果用
{}
宣告,在使用時必須帶著引數名,如:a:123;如果用宣告,在使用時需要按照順序使用
void test(int a, )
void test2(int a, [int b, string c])
void main()
2.dart還提供了預設引數
使用等號指定引數預設值, 預設值只能是編譯時常量
void test(int a, )
void test2(int a, [int b = 2])
void main()
內的變數不允許修改
test2(5); // a = 5, b = 2
test2(5, 500); // a = 5, b = 500, 內的變數可以修改
}
四、匿名函式
匿名函式的主要作用:
void main();
f1("dart"); // hello dart
}
void main()
"); });
// 如果只有一行**,可以使用=>
listvar.foreach((animal) => print("animal is $"));
}
五、作用域
dart
語言的變數是有作用域的,變數的作用域是由**布局決定的。
var str1 = "str1";
main()
// 執行內部函式
testscope();
}
六、閉包
閉包是乙個函式物件,它可以訪問其作用域中的變數,即使該函式在其原始範圍之外使用也是如此。
在以下示例中,makeadder()
捕獲變數num
。無論返回的函式在**,它都會記住num
。
// 本例項來自於官網
function makeadder(num);}
main()
七、lambda函式
lambda函式是表示函式的簡潔機制。這些函式也稱為箭頭函式。
語法:
[return_type]function_name(parameters)=>expression;
例項:
printmsg()=>print("hello");
int test()=>123;
void main()
Dart建構函式
2.構造函式呼叫父類建構函式的順序 3.建構函式傳遞 classname 普通建構函式 classname.identifier 命名建構函式 const classname 常量建構函式 factroy classname 工廠建構函式使用 var p1 point 2 2 dart2中,可以省略...
dart函式中的箭頭函式與函式間的相互呼叫
void main list.foreach value print value 箭頭函式,只能寫一句話不能寫多句 寫法1 list.foreach value 需求 修改下面list裡面的資料,讓陣列中大於2的值乘以2 list list 4,1 2,3 4 var newlist list.ma...
Dart 函式 函式引數 匿名函式
dart彙總這裡 main 函式 函式是一等物件 匿名函式 返回值dart 是一門真正物件導向的語言,甚至其中的函式也是物件,並且有它的型別 function 這也意味著函式可以被賦值給變數或者作為引數傳遞給其他函式。也可以把 dart 類的例項當做方法來呼叫。已下是函式實現的示例 bool isn...