Java

JAVA - 조건문 ( if, else if, else )

비망노트 2022. 7. 2. 14:32

- 자바 조건문 ( if, else if, else )

 

조건문이란?

조건에 따라 코드의 실행 흐름을 다르게 동작하도록 제어하는 기능을 함

조건문의 종류로는 if문과 switch문 두가지가 있다.

우선 이번포스팅에서는 if문을 다뤄보자.

 

if, else if, else
if (조건식) {
    실행문;
} else if (조건식) {
    실행문;
} else {
    실행문; // if도 else if도 아닌 그밖의 다른 경우
}

 

✅ 조건식의 내용이 true일때 실행문을 작동시킨다.

- 조건식 : 관계연산자(>,< …), 논리연산자(&&, || …), 단항( ! NOT )연산자, 메소드를 사용

- 조건식에 기본형데이터형을 사용하면 관계연산의 비교가능 ( >, <, <=, >=, ==, != )

- 조건식에 문자열 (String)을 사용하면 관계연산의 == 만 사용가능,
    사용가능하지만 ==보다 equals 메소드 사용권장

// 변수명.equals("비교할문자열");
String str1 = "가나";
String str2 = "다라";
System.out.println(str1.equals(str2)); // false
System.out.println(str1.equals("가나")); // true

 


✅ 간단한 각종 예제

if 문
// 임의의 수에 대한 절대값을 출력

public class Main{
  public static void main(String[] args){
		
    int i = -8;

    if ( i < 0 ) { 
      i = -i;
    }
    System.out.println(i);
  }
}
// output : 8

✅ -8 은 음수이므로 -i 즉  - - 8 이 된다 ( - - ) 8  -->  (+)8 즉 +8 양수가되는것이고

     양수값을 넣었다면 0보다 작다는 조건을 만족시키지 못하므로 양수를 가진 i값 그대로 출력이된다.

 

if, else문
// 짝수 홀수 구분출력

public class Main{
  public static void main(String[] args){
		
    int i = 5;
		
    if( i % 2 == 0 ){
      System.out.println("짝수");
    }else {
      System.out.println("홀수");
    }
  }
}
// output : 홀수

✅ 5 % 2는 1이므로 i%2==0 을 만족시키지 못했으므로 else의 실행문을 실행시킨다

 

else if 문
// 점수에따른 학점구하기

public class ColorTest{
  public static void main(String[] args){
		
    int i = 85;
    String grade;

    if( i/10 >= 9 ){
      grade = "A";
    } else if( i/10 >= 8){
      grade = "B";
    } else if( i/10 >= 7){
      grade = "C";
    } else {
      grade = "D";
    } // end if
      System.out.println("학점:"+grade);
  }
}

✅ 정수끼리의 나눗셈은 정수만 출력한다

      즉 i 값이 85라 한들 85 / 10 의 값은 실수가 아닌 정수끼리의 연산이므로 소수점이하는 표시하지못하고 8만 반환한다.

      이러한 점을 이용한다면 switch조건문에서 case 즉 조건에대한 경우의 수를 확 줄여 작성할 수 있다.

 

'Java' 카테고리의 다른 글

JAVA - 반복문 ( for )  (0) 2022.07.05
JAVA - 조건문 ( switch - case )  (0) 2022.07.02
JAVA - 문자열 분리 ( StringTokenizer )  (0) 2022.06.29
JAVA - 문자열 분리 ( split )  (0) 2022.06.28
JAVA - 입력받기 ( BufferedReader )  (0) 2022.06.27