Dart基礎知識
- 程式入口
- 控制台輸出
- 變量
- 檢查null或零
- Functions
- 異步程式設計
- Futures
- async和await
程式入口
在Dart中, 每個app都必須有一個頂級的main() 函數作為應用程式的入口點。
// Dart
main() (
)
練一練Dart Pad。
Dart Pad是Dart的一個線上playground, 提供Dart線上playground還有:Online Dart Compiler。
控制台輸出
要在Dart中列印到控制台,可使用print:
//Dart
print('Helloworld!') ;
變量
Dart是類型安全的 - 它使用靜态類型檢查和運作時的組合, 檢查以確定變量的值始終與變量的靜态值比對類型。盡管類型是必需的, 但某些類型注釋是可選的, 因為Dart會執行類型推斷。
建立和配置設定變量
在Dart中, 變量必須是明确的類型或系統能夠解析的類型。
//Dart
String name='dart'; //Explicitly typed as a string.
var other Name='Dart'; //Inferred string.
//Both are acceptable in Dart.
預設值
在Dart中, 未初始化的變量的初始值為null。
注意:數字在Dart中也被當成對象, 是以隻要是帶有數字類型的未初始化變量的值都是"null"。
//Dart
var name; // ==null
int x; // ==null
檢查null或零
在Dart中, 隻有布爾值
true
被視為true。
void main() {
var myNull = null;
if(myNull == null){
print("myNull == null");
}
var zero = 0;
if(zero == 0){
print("zero == 0");
}
}
Dart null 檢查最佳實踐
看一下下面預計的執行結果:
print(null??false);
print(false??11);
print(true??false);
Functions
//Dart
fn(){
return true;
}
//can also be written as
bool fn(){
return true;
}
異步程式設計
_getIpAddress(){
final url = "https://www.baidu.com";
httpRequest.request(url).then((values){
print(values);
}).catchError((error) => print(error));
}
async和await
_getIpAddress() async{
final url = "https://www.baidu.com";
var request = await HttpRequest.request(url);
String ip = json.decode(request.responseText) ['origin'];
print(ip);
}