【Flutter/Dart】条件分岐の使い方|if/switch/三項演算子

条件分岐
目次

条件分岐とは?

条件分岐を使えば、指定した条件が真か偽に対して実行する処理を指定できます。

例えば、条件を「渡されたフルーツがリンゴ」、条件が真の時に実行する処理を「リンゴを食べる」としておくとします。この条件のもとでリンゴが渡された場合は「真」なのでリンゴを食べ、渡されたものがバナナだった場合は「偽」なので処理を実行しません。

条件式とは?

条件を指定するには、比較演算子を用いた条件式を使います。また、条件式で指定した条件はboolean型の真偽値(true/false)となります。

>>【Dart】演算子の種類と使い方

条件分岐の種類

  • if文
  • if-else文
  • else if
  • switch文
  • 三項演算子

if文

if文を使えば、1つの条件に対し、1つの処理を実行するか否か指定できます。

定義

//定義
if(条件式){
  (実行したい処理)
}
//例
void main() {
  //条件が真の場合
  int number = 10;
  if (number >= 5) {
    print('5以上');
  } 

  //条件が偽の場合
  number = 1;
  if (number >= 10) {
    print('10以上');
  } 
}

//出力
//5以上

if-else文

if-else文を使えば、1つの条件に対し、真と偽それぞれに対して実行したい処理を指定できます。

定義

//定義
if(条件式){
  (真の時に実行したい処理)
}
else{
  (偽の時に実行したい処理)
}
//例
void main() {
  //条件が真の場合
  int number = 10;
  if (number >= 5) {
    print('5以上');
  } 
  else {
    print('5より下');
  } 

  //条件が偽の場合
  number = 1;
  if (number >= 5) {
    print('10以上');
  } else {
    print('10より下');
  } 
}

//出力
//5以上
//10より下

else if

if文やif-else文に「else if」を使えば、複数の条件に対し、処理を実行するか否か指定できます。また「else if」は条件分岐に複数使用でき、上から順に条件が処理されていきます。

定義

//定義
if(条件式A){
  (実行したい処理)
}
else if(条件式B){
  (実行したい処理)
}
else if(条件式C){
  (実行したい処理)
}
else{
  (実行したい処理)
}
//例
void main() {
  int number = 3;
  if (number >= 10) {
    print('10以上');
  } else if (number >= 5) {
    print('5以上');
  } else if (number >= 0) {
    print('0以上');
  }
  else {
    print('0より下');
  }
}

//出力
//0以上

switch文

switch文は、式の評価(値)が3つ以上に枝分かれする際の条件分岐に使用します。

定義

//定義
switch(式){
  case 値A:
    (実行したい処理)
    break;
  case 値B:
    (実行したい処理)
    break;
  case 値C:
    (実行したい処理)
    break;
  default:
    (実行したい処理)
    break;  
}
//例
void main() {
  String fruit = 'banana';
  switch (fruit) {
    case 'apple':
      print('リンゴ');
      break;
    case 'banana':
      print('バナナ');
      break;
    case 'grape':
      print('ぶどう');
      break;
    default:
      print('リンゴ、バナナ、ぶどう以外');
      break;
  }
}

//出力
//バナナ

式の評価が、caseで指定した値に当てはまらなかった場合、defaultで指定した処理が実行されます。よって上の例で仮に「fruit = ‘cherry’」だった場合は、defaultで指定した「リンゴ、バナナ、ぶどう以外」が出力されます。

三項演算子

三項演算子を使えば、if-else文を1行のコードで表せます。

定義

//定義
(条件式)?真の場合の処理:偽の場合の処理;
//例
void main() {
  int num = 8;
  (num >= 5) ? print('5以上') : print('5より下'); 
}

//出力
//5以上
よかったらシェアしてね!
目次
閉じる