Latest web development tutorials

자바 분기 구조 - 만약 ... 다른 / 스위치

실행 시퀀스 구조 만 순서 판단하고 선택할 수 있고, 따라서, 분지 구조가 필요 없다.

자바는 두 가지 구조를 갖는다 :

  • if 문
  • switch 문

if 문

성명은 부울 식 및 하나 이상의 문이 포함 된 경우.

문법

다음 구문과 문장 경우 :

if(布尔表达式)
{
   //如果布尔表达式为true将执行的语句
}

부울 표현식이 true로 평가되면 코드의 if 문 블록. 그렇지 않으면 코드 실행 뒤에 문 블록의 경우.

public class Test {

   public static void main(String args[]){
      int x = 10;

      if( x < 20 ){
         System.out.print("这是 if 语句");
      }
   }
}

다음과 같이 위의 코드는 결과가 컴파일 :

这是 if 语句

경우 ... else 문

은 IF 문의 부울 표현식이 거짓 다른 계산서를 가진 문, else 문 블록이 실행됩니다 나중에합니다.

문법

다음과 같은 경우 ... 다른 사용 :

if(布尔表达式){
   //如果布尔表达式的值为true
}else{
   //如果布尔表达式的值为false
}

public class Test {

   public static void main(String args[]){
      int x = 30;

      if( x < 20 ){
         System.out.print("这是 if 语句");
      }else{
         System.out.print("这是 else 语句");
      }
   }
}

다음과 같이 위의 코드는 결과가 컴파일 :

这是 else 语句

... 다른 경우 ... else 문 경우

문 ELSEIF ... 다른 문을 사용하면 나중에,이 문은 가능한 다양한 시나리오를 검색 할 수 있습니다.

사용하는 경우 다른 else 문, 경우, 다음과 같은 점에주의가 필요 :

  • 만약 문 ELSEIF 모든 사람이 문 앞에 가장 한 다른 문에서 문.
  • 문이 여러 ELSEIF 문을 수 있다면, 그들은 다른 문 앞에 있어야합니다.
  • 다른 하나의 문이 다른 참, 기타로 감지되면 일단 다른 문이 실행 건너 뜁니다 경우.

문법

다음과 같은 경우 ... 다른 구문은 다음과 같습니다

if(布尔表达式 1){
   //如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
   //如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
   //如果布尔表达式 3的值为true执行代码
}else {
   //如果以上布尔表达式都不为true执行代码
}

public class Test {

   public static void main(String args[]){
      int x = 30;

      if( x == 10 ){
         System.out.print("Value of X is 10");
      }else if( x == 20 ){
         System.out.print("Value of X is 20");
      }else if( x == 30 ){
         System.out.print("Value of X is 30");
      }else{
         System.out.print("This is else statement");
      }
   }
}

다음과 같이 위의 코드는 결과가 컴파일 :

Value of X is 30

중첩 된 경우 ... else 문

중첩 된 경우-else 문은 합법적이다. 이것은 당신이 다른 경우 또는 ELSEIF 문에 경우 또는 ELSEIF 문을 사용할 수 있다는 것을 의미한다.

문법

다음과 같이 다른 구문 인 경우 ... 중첩 :

if(布尔表达式 1){
   ////如果布尔表达式 1的值为true执行代码
   if(布尔表达式 2){
      ////如果布尔表达式 2的值为true执行代码
   }
}

당신은 다른 ... 경우 다른 중첩 된 if 문처럼 될 수 있습니다.

public class Test {

   public static void main(String args[]){
      int x = 30;
      int y = 10;

      if( x == 30 ){
         if( y == 10 ){
             System.out.print("X = 30 and Y = 10");
          }
       }
    }
}

다음과 같이 위의 코드는 결과가 컴파일 :

X = 30 and Y = 10

switch 문

값의 범위의 변수의 값을 결정하는 문 스위치는 동일하고, 각 값은 브랜치라고한다.

문법

다음과 같이 스위치의 구문은 다음과 같습니다

switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

스위치 문은 다음과 같은 규칙이 있습니다 :

  • switch 문 유일한 변수 타입은 바이트, 짧은, INT 또는 문자입니다.
  • 스위치 문은 여러 경우 문을 가질 수 있습니다. 콜론과 값 다음에 각각의 경우 뒤에 비교합니다.
  • 값의 경우 문 데이터 유형 변수의 데이터 형과 동일하며, 오직 상수 또는 리터럴 수있다.
  • 케이스 문장의 값에 해당하는 변수의 값이 경우 문 후 문이 실행될 때 break 문 switch 문에서 나타나는까지. 3
  • 이 break 문을 발견하면, 스위치 문은 종료된다. 이 프로그램은 실행되는 switch 문 다음 문으로 이동합니다. case 문은 break 문을 포함 할 필요가 없습니다. 문이 나타납니다 더 휴식이없는 경우, 프로그램은 break 문까지 다음 case 문으로 계속됩니다.
  • 스위치 문은 switch 문의 마지막 지점이어야합니다 기본 분기를 포함 할 수 있습니다. 어떠한 경우 문과 변수 값과 동일한 시간에 기본 실행. 기본 분기는 문을 중단 할 필요가 없습니다.

public class Test {

   public static void main(String args[]){
      //char grade = args[0].charAt(0);
      char grade = 'C';

      switch(grade)
      {
         case 'A' :
            System.out.println("Excellent!"); 
            break;
         case 'B' :
         case 'C' :
            System.out.println("Well done");
            break;
         case 'D' :
            System.out.println("You passed");
         case 'F' :
            System.out.println("Better try again");
            break;
         default :
            System.out.println("Invalid grade");
      }
      System.out.println("Your grade is " + grade);
   }
}

다음과 같이 위의 코드는 결과가 컴파일 :

Well done
Your grade is C