iT邦幫忙

2022 iThome 鐵人賽

DAY 3
0
Mobile Development

Flutter Didilong系列 第 3

D-3 Dart control flow | 飛鏢不只直直射出去,還能射好幾次

  • 分享至 

  • xImage
  •  

control flow

讓程式除了由上而下的執行

  1. 條件式判斷 : 決定哪個條件要執行
  2. 重複執行的迴圈 : 替重複的程式縮短,ex:總共10筆訂單,每張訂單價格都要台幣轉美金

本文主軸

  • 條件式判斷 conditional
  • 範例 for Loop
  • 範例 while Loop

條件式判斷

if ... elseif ... else

試試看國小造句

if(今天下雨){
    我就要帶把傘
} else if(今天大太陽){
    我就會擦防曬
} else{
都沒有的話我就什麼都不做
}

函式介紹

  • int.parse(),將parse括號內String轉為Integer
  • stdin.readLineSync 需import dart:io 用於取得鍵盤輸入

判斷輸入年份是 first condition (21st)
或是 second condition (20th)

import 'dart:io';

var year = int.parse(stdin.readLineSync() ?? '0'); // year代表取得鍵盤輸入的年份

if (year >= 2001) {
  print('21st century');
}else if (year >= 1901) {
  print('20th century');
}

for Loop範例

month設為1
只存在用for迴圈中
滿足month <= 12的條件
即會執行print(month)
接著 month++ 累加1 ,

ex: int(1) -> month++後 變成int(2); int(2) -> month++後 變成int(3)

for (int month = 1; month <= 12; month++) {
  print(month);
}

創造一個List存放許多分數(integer)
for迴圈會執行多次
具體會執行幾次,就看我scoreList元素有幾個; ex:參考line1,會執行7次

var scoreList = <int>[60, 70, 30, 40, 70, 99, 100]; 

for (final score in scoreList) {
    print(score);
}

while Loop範例

year 滿足條件 < 2016
就會執行 year+=1 (與year++效果相同)
直到 等於大於 2016 就會停止

year = 2000

while (year < 2016) {
  year += 1;
}

上一篇
D-2 Dart 變數介紹 | 發射之前先認識飛鏢
下一篇
D-4 Dart Function介紹 | 客製量身打造的功能?
系列文
Flutter Didilong30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言