Java. 조건문(if, elseif, else)

kimkim·2024년 8월 27일

Java. 공부내용정리

목록 보기
3/38

조건문

  • 형식 : if(조건){참일 때 실행할 코드}
  • 조건이 참일 때 코드가 실행이 됨

기본형식

public class Condition {
	public static void main(String[] args) {
		if(false){
        	System.out.println("안녕");
        } //실행 안함
        if(true){
        	System.out.println("안녕");
        } //실행함

관련문제

  • 조건에 따라 날씨문구 변화만들기
    "맑음: 날씨가 맑습니다. 나들이 나가세요."
    "흐림: 날씨가 흐립니다. 집에 계세요."
    "비 : 날씨가 비가 옵니다. 우산을 챙기세요."
    "눈 : 날씨가 눈이 옵니다. 눈사람 만들어보세요."
    "1. 맑음, 2. 흐림, 3. 비, 4. 눈
    "선택하면 관련 문구가 나옴
public class Condition{
	public static void main(String[] args) {
    
    int weather;
    weather = 1;
    
    // 실행 경우의 수 4 > ifans 4ro
    if(weather == 1){
    	System.out.println("맑음: 날씨가 맑습니다. 나들이 나가세요.")
    }
    if(weather == 2){
    	System.out.println("흐림: 날씨가 흐립니다. 집에 계세요.")
    }
    if(weather == 3){
    	System.out.println("비 : 날씨가 비가 옵니다. 우산을 챙기세요.")
    }
    if(weather == 4){
		System.out.println("눈 : 날씨가 눈이 옵니다. 눈사람 만들어보세요.")    
    }
	}
}

if 문의 중첩

  • if문 안에 if문을 사용하여 이중 if문을 만들 수 있다.
  • else if, else가 있지만 제외하고 if문만 사용할 때 여러 조건을 주고 싶을 때 사용한다.
  • 자바의 경우 조건에서 0<a<2 이런식으로 겹쳐서 사용하지 못한다.

기본형식

public class Condition {
	public static void main(String[] args) {
		if(true){
        	if(true){
	        	System.out.println("안녕");
            }
        }
	}
}

관련문제

  • 나이에 따른 학적 표현
    초등학생, 중학생, 고등학생, 성인
    13 이하 초등학생
    16 이하는 중학생
    19 이하는 고등학생
    20 이상은 성인
public class Condition{
	public static void main(String[] args) {
    	if(age <= 13){
        	System.out.println("초등학생");
        }
        if(age <= 16){
        	System.out.println("중학생");
        }
        if(age <= 19){
        	Sysrem.out.println("고등학생");
        }
        if(age <= 20){
        	System.out.println("성인");
        }
        
        // 13 > 초등학생
        // 15 > 중학생, 초등학생
        // 19 > 고등학생, 중학생, 초등학생
	}
}

if문 중첩을 사용하지 않고 실행했을 때
해당되는 조건이라면 참인 조건인 if문이 다 출력이 됨
그리서 if중첩을 사용해서 범위를 정해주어야 함

public class Condition{
	public static void main(String[] args) {
    	if(age <= 13){
        	System.out.println("초등학생");
        }
        if(age <= 16){
        	if(age > 13){
	        	System.out.println("중학생");
            }
        }
        if(age <= 19){
			if(age > 16){
        		Sysrem.out.println("고등학생");
            }
        }
        if(age <= 20){
        	System.out.println("성인");
        }
   }
}

조건문 택일구조 (else if, else)

  • 양자택일, 사자택일
  • 여러 조건중에 하나가 선택이 되면 나머지를 따질 필요가 없을 때 사용한다.
  • 조건문을 실행하다가 참조건으로 코드가 실행되었을 때 남은 조건문은 실행하지 않는다.
  • else if
    • 형식 : else if(조건){내용}
    • 처음 if문을 쓰고 if문이 거짓일 때 하위 다른 조건으로 실행시키고 싶을 때 사용한다.
    • 한 조건문에 연달아 쓸 수 있다.
    • else로 if문 두개를 연결시킨다.
  • else
    • 형식 : else{내용}
    • if, else if 외 조건이 필요 없는 내용이 들어왔을 때 실행할 코드를 쓰고 싶을 때 쓴다.
    • 조건 없이 {}에 내용을 기입하면 된다.
    • 마지막을 제외한 모든 것이 거짓을 때 나머지에서 완료되도록 하는 조건문

기본형식

public class Condition{
	public static void main(String[] args) {
    	int age;
        age = 15;
        
        if(age <= 13){
        	System.out.println("초등학생");
        }
        else if(age <= 16){
        	System.out.println("중학생");
        }
        else if(age <= 19){
        	System.out.println("고등학생");
        }
        else {
        	System.out.println("성인");
        }
    }
}

관련문제

성적(오자택일)
점수 90 ~ 100 : A
점수 80 ~ 89 : B
점수 70 ~ 79 : C
점수 60 ~ 69 : D
점수 60 미만 : F
※ 0~100 숫자로 한정한다.

public class Condition{
	public static void main(String[] args) {
    	int score;
        score = 55;
        
        if(score <60){
        	System.out.println("F");
        }
        else if(score <= 69){
        	System.out.println("D");
        }
        else if(score <= 79){
        	System.out.println("C");
        }
        else if(score <= 89){
        	System.out.println("B");
        }
        else{
        	System.out.println("A");
        }
    }
}

만약 score<=100인 점수가 맨 앞에 있다면
모든 점수가 A일 것이다.
그러므로 if조건을 줄 때는 조건의 순서를 잘 고려해보아야 한다.

0개의 댓글