Flutter 學(xué)習(xí)從零開始-Dart流程控制語句

if-else 條件語句

String playName(String name) {
  if (name != null) {
    return name;
  } else {
    return "Guest";
  }
}

String playName2(String name) {
  return name != null ? name : "Guest";
}

String playName3(String name) {
  return name ?? "Guest";
}

for 循環(huán)語句

 for (int i = 0; i < arr.length; i++) {
    print(arr[i]);
  }
 for (var item in arr) {
   print(item);
 }
 arr.forEach((element) {
   print(element);
 });

while do-while 語句

int x =10;
while(x > 0){
  print (x--);
}

int y = 10;
do{
  print(y--);
}while(y>0);

witch 語句

String s="A";
switch(s){
case 'A':
  print('優(yōu)秀');
break;
case 'B':
  print('良好');
break;
default:
  print("未知");
break;
}

break 跳出循環(huán), continue 結(jié)束本次循環(huán),開始下一輪循環(huán)

assert 語句

  • assert (condition,optionallMessage);
  • 當(dāng)condition 執(zhí)行為false,中斷正常執(zhí)行。
  • 斷言只在檢查模式下運行有效,如果在生產(chǎn)模式運行,則斷言不會執(zhí)行。

異常

  • Dart 代碼能夠 Throw 和Catch 異常。異常是一些代碼未知的錯誤情況。如果異常沒有被捕獲,則異常會被拋出,最終導(dǎo)致代碼終止執(zhí)行。
  • Dart 中所有異常為非檢查異常。方法不一定聲明他們所拋出的異常,并且你也不需要補貨任何異常。
  • Dart提供了Exception 和Error 類型,以及一些子類型。也可以實現(xiàn)自己的異常類型。Dart 可以拋出任何非null 對象為異常,不僅僅是實現(xiàn)了Exception 或者Error 的對象。
  • 拋出異常
throw FormatException('Expected a least 1 section');
  • 拋出任意類型對象
throw 'Out of llamas!';

高質(zhì)量代碼建議異常類型為 Exception 和Error,以及一些子類型。

  • 捕獲異??梢员苊猱惓@^續(xù)傳遞,捕獲異常給你一個處理該異常的機會。
try{
   breedMoreLlamas();
} on OutOfLamasException{
   buyMoreLlamas();
}
  • 對于可以拋出多種類型的異常的代碼,你可以指定多個捕獲語句。
try{
  breadMoreLlamas();
} on OutOfLlamasException{
  buyMoreLlamas();
} on Exception catch(e){
  print('Unknown exception: $e');
} catch( e,s){
  print('Something really unknown; $e');
  print('Stack trace:\n $s');
}
  • 要確保某些代碼不管有沒有出現(xiàn)異常都需要執(zhí)行,可以使用一個 finally語句來實現(xiàn)。如果沒有catch語句來捕獲異常,則在執(zhí)行完finally 語句后,異常被拋出。
try{
  breedMoreLlamas();
} finally{
  cleanLlamaStalls();
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容