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)系作者
  • 序言:七十年代末移宅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子椿疗,更是在濱河造成了極大的恐慌吞杭,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件变丧,死亡現(xiàn)場離奇詭異芽狗,居然都是意外死亡,警方通過查閱死者的電腦和手機痒蓬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門童擎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人攻晒,你說我怎么就攤上這事顾复。” “怎么了鲁捏?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵芯砸,是天一觀的道長。 經(jīng)常有香客問我给梅,道長假丧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任动羽,我火速辦了婚禮包帚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘运吓。我一直安慰自己渴邦,他們只是感情好疯趟,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著谋梭,像睡著了一般信峻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瓮床,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天盹舞,我揣著相機與錄音,去河邊找鬼纤垂。 笑死矾策,一個胖子當(dāng)著我的面吹牛磷账,可吹牛的內(nèi)容都是我干的峭沦。 我是一名探鬼主播,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼逃糟,長吁一口氣:“原來是場噩夢啊……” “哼吼鱼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起绰咽,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤菇肃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后取募,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體琐谤,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年玩敏,在試婚紗的時候發(fā)現(xiàn)自己被綠了斗忌。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡旺聚,死狀恐怖织阳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情砰粹,我是刑警寧澤唧躲,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站碱璃,受9級特大地震影響弄痹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜嵌器,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一界酒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧嘴秸,春花似錦毁欣、人聲如沸庇谆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽饭耳。三九已至,卻和暖如春执解,著一層夾襖步出監(jiān)牢的瞬間寞肖,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工衰腌, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留新蟆,地道東北人。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓右蕊,卻偏偏與公主長得像琼稻,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子饶囚,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354