스칼라 IF...ELSE 문


Scala IF...ELSE 문은 하나 이상의 문의 실행 결과(True 또는 False)에 따라 실행되는 코드 블록입니다.

다음 그림을 통해 조건문의 실행 과정을 간단히 이해할 수 있습니다.

if.png


if 문

if 문이 있습니다. 부울 표현식 표현식과 다음 명령문 블록으로 구성됩니다.

문법

if 문의 구문 형식은 다음과 같습니다.

if(布尔表达式)
{
   // 如果布尔表达式为 true 则执行该语句块
}

부울 식이 true이면 중괄호 안에 있는 명령문 블록을 실행하고, 그렇지 않으면 건너뜁니다. 중괄호 블록 내의 명령문은 중괄호 뒤의 명령문 블록을 실행합니다.

Instance

object Test {
   def main(args: Array[String]) {
      var x = 10;

      if( x < 20 ){
         println("x < 20");
      }
   }
}

Run Instance»

위 코드를 실행하면 출력 결과는 다음과 같습니다.

$ scalac Test.scala 
$ scala Test
x < 20

if .. .else 문

if 문 뒤에는 else 문이 올 수 있으며 불리언 표현식이 false인 경우 else 내의 문 블록이 실행될 수 있습니다.

구문

if...else 구문 형식은 다음과 같습니다.

if(布尔表达式){
   // 如果布尔表达式为 true 则执行该语句块
}else{
   // 如果布尔表达式为 false 则执行该语句块
}

object Test {
   def main(args: Array[String]) {
      var x = 30;

      if( x < 20 ){
         println("x 小于 20");
      }else{
         println("x 大于 20");
      }
   }
}

위 코드를 실행하면 출력 결과는 다음과 같습니다.

$ scalac Test.scala 
$ scala Test
x 大于 20

if...else if...else 문

if 문 바로 뒤에 else if...else 문이 올 수 있으며 이는 경우에 유용합니다. 다수의 조건부 판단문.

구문

if...else if...else 구문 형식은 다음과 같습니다.

if(布尔表达式 1){
   // 如果布尔表达式 1 为 true 则执行该语句块
}else if(布尔表达式 2){
   // 如果布尔表达式 2 为 true 则执行该语句块
}else if(布尔表达式 3){
   // 如果布尔表达式 3 为 true 则执行该语句块
}else {
   // 如果以上条件都为 false 执行该语句块
}

object Test {
   def main(args: Array[String]) {
      var x = 30;

      if( x == 10 ){
         println("X 的值为 10");
      }else if( x == 20 ){
         println("X 的值为 20");
      }else if( x == 30 ){
         println("X 的值为 30");
      }else{
         println("无法判断 X 的值");
      }
   }
}

위 코드를 실행합니다. 출력 결과는 다음과 같습니다.

$ scalac Test.scala 
$ scala Test
X 的值为 30

if...else 중첩 문

if...else 중첩 문은 if 문 내에 하나 이상의 if 문을 포함할 수 있습니다.

문법

if...else 중첩 문의 구문 형식은 다음과 같습니다.

if(布尔表达式 1){
   // 如果布尔表达式 1 为 true 则执行该语句块
   if(布尔表达式 2){
      // 如果布尔表达式 2 为 true 则执行该语句块
   }
}

else if...else의 중첩 문은 중첩 문의 구문 형식과 유사합니다. if...else 문.

Instance

object Test {
   def main(args: Array[String]) {
        var x = 30;
        var y = 10;

         if( x == 30 ){
            if( y == 10 ){
            println("X = 30 , Y = 10");
         }
      }
   }
}

는 위 코드를 실행하고 출력 결과는 다음과 같습니다.

$ scalac Test.scala 
$ scala Test
X = 30 , Y = 10