프로그래밍/자바(java) 융합개발자 2차

[취성패] 자바 배우기 - 선수학습(조건분기문-if else, switch case)

aSpring 2020. 12. 12. 15:25
728x90
728x90

 

학습내용

1. if else 구문

2. switch case 구문

3. 실습영상보기

---------------------------------

 

1. 단순 if구문

- 조건식의 결과가 참일 경우 if 구문 바로 아래의 문장 수행

- 조건식의 결과가 거짓일 경우 if구문 바로 아래의 문자은 건너뜀

- 문장은 한 라인일 수 도 있고 여러 라인일 수도 있음

- 문장이 한 라인일 경우 블록기호({ })를 사용하지 않아도 됨(해도됨)

- 문장이 여러 라인일 경우 반드시 블록 기호({ })를 사용함

 

if(조건식) {

   문장

}

 

ex) 점수가 90점 이상일 경우 "합격"을 배정하는 문법(변수 score, result)

if(score >= 90) {

   result = "합격";

}

-> score가 90점 미만인 경우 : false -> 수행하지 않음

 

2. 단순 if else 구문

- 조건식의 결과가 참일 경우 if 구문 바로 아래의 문장 수행

- 거짓일 경우 else 구문 아래의 문장 수행

 

if(조건식) {

    문장1

} else {

    문장2

}

 

ex) 점수가 90점 이상일 경우 result 변수에 "합격"을,

그렇지 않을 경우 result 변수에 "불합격"을 배정하는 문법

if(score >= 90) {

   result = "합격";

} else {

   result = "불합격";

}

 

3. 다중 if else 구문

- 조건식의 결과가 3개 이상일 경우 사용함

- 조건식이 여러개로 구성되며 두 번째 조건식부터는 elseif(조건식) 형태로 작성함

 

if(조건식1) {

   문장1

} esleif(조건식2) {

   문장2

} else {

   문장3

}

 

ex) 점수가 90점 이상일 경우 result 변수에 "A"를,

80점 이상일 경우 "B"를, 그 외의 경우 "C"를 배정

if(score >= 90) {

   result = "A";

} else if (score >= 80) {

   result = "B";

} else {

   result = "C";

}

 

 

[Switch case 구문]

1. switch case 문법 : 다중 선택을 위한 문법

- 다중 분기에 사용 cf) 다중 if else 구문은 처리 내용이 많을 경우 사용 -> switch case로 더 간단!

- 분기의 판단 기준은 조건식이 아닌 식의 값으로서 반드시 정수로 나타냄

- break와 default 문장은 생략 가능함

 

switch(정수식) {

  case 값1;

   문장1;

   break;    -> 문장1을 수행 후 아래 내용 모두 stop, break문 없을 경우 아래 내용까지 모두 수행함.

  case 값2;

   문장2;

   break;

      .

      .

   case 값n;

    문장n;

    break;

   default;   -> 처리되지 않은 case가 있으면 다음 문장 처리, 생략 가능

    문장;

}

 

2. switch case 활용 사례

점수가 90점 이상일 경우 "A", 80점 이상일 경우 "B", 그 외의 경우 "C"

 

switch (score/10) {

  case 10;             -> 10이나 9나 시행해야 할 문장은 같음

  case 9;

    grade = "A";

    break;

  case 8;

    grade = "B";

    break;

  default;

    grade = "C";

}

 

- score/10 연산의 결과는 정수 -> 소수점 이하는 절삭 처리됨

- 첫 번째 case 문장에는 break문이 없으므로 두 번째 case 문장으로 무조건 내려오게 됨

 

public class Exam6_1 {

        public static void main(String[] args) {

                  int score = 93;

                  if (score >= 90)

                     System.out.println("합격");       -> 합격(조건식이 false면 출력X, 아래 문장인 score만 출력됨)

                     System.out.println(score);        -> 93 출력(조건식이 참이든 거짓이든 출력됨)

        }

 

}

 

 

public class Exam6_2 {

        public static void main(String[] args) {

                  int score = 93;

                  if (score >= 90) {

                     System.out.println("합격");       -> 합격

                  } else {

                     System.out.println("불합격");    -> 조건식이 거짓일 때만 출력됨

                  }

        }

 

}

 

{ } : 한줄씩 이므로 생략이 가능함

 

 

public class Exam6_3 {

        public static void main(String[] args) {

                  int score = 87;

                  if (score >= 90) {

                     System.out.println("A");

                  } else if (score >= 80) {

                     System.out.println("B");           -> B

                  } else {

                     Sysem.out.println("C");

                  }

        }

 

}

 

 

public class Exam6_4 {

        public static void main(String[] args) {

                  int score = 93;

                  switch (score / 10) {

                  case 10;

                  case 9;

                     System.out.println("A");           -> A

                     break;

                  case 8;

                     System.out.println("B");   

                     break;        

                  default;

                     Sysem.out.println("C");            -> case10, 9, 8 모두에 해당하지 않는 경우 C 출력

                  }

 

        }

 

}

728x90
728x90