본문 바로가기
개발&코딩/Java

Java 독학 #2 - if,else,else if 조건제어

by 우동이 2022. 4. 17.
300x250

 

기본 숙지 개념 : Java 기초

작업환경 :  VIsual Studio Code

버전 : JDK 17.0.2

 

추천 자료 : https://docs.oracle.com/javase/7/docs/api/

 

Java Platform SE 7

 

docs.oracle.com

 

제어문(Control flow statements)

  • 조건문 : 제어문에 해당하는 명령문으로 조건식의 결과를 통해 수행할 연산을 지정해준다.
  • 반복문 : 해당하는 연산을 반복해서 해야 할 경우 사용

-제어문은 프로그램을 작성해 사용하기 위한 흐름 제어의 목적을 위해 사용하는 명령문이다.

 

조건문의 형태(if, else, else if, switch)

언어별로 비슷하거나 약간의 차이가 존재하지만

자바는 4가지 형태의 조건문을 제공함

  1. if문
  2. if/else문
  3. if/else if/else문
  4. switch문

가장 기초적인 if구문의 형태를 통해 간단한 조건문을 구성해보자

조건 : 입력받은 정수값이 10 이상일 경우 "너무 커" 출력

import java.util.Scanner; // 입력 스트림 사용을 위해 필요한 모듈을 불러온다.

public class basic1 {
    public static void main(String [] args){ //main
        
        Scanner sc=new Scanner(System.in); //sc객체를 생성한다.
        int value=sc.nextInt();// 정수형 변수 value에 값을 입력받는다.

        if(value >= 10) { // value가 10보다 클경우
            System.out.println("입력받은 정수의 값은 : "+value+"입니다."); //value의 값을 출력
            System.out.println("너무커!");
        }
    }
}

if문은 조건을 통해 수행할 명령을 지정할 수 있는 조건문이다.

그렇다면 if와 else 형태를 살펴보자

if/else 구문

import java.util.Scanner; // 입력 스트림 사용을 위해 필요한 모듈을 불러온다.

public class basic1 {
    public static void main(String [] args){ //main
        
        Scanner sc=new Scanner(System.in); //sc객체를 생성한다.
        int value=sc.nextInt();// 정수형 변수 value에 값을 입력받는다.

        if(value >= 10) { // value가 10보다 클경우
            System.out.println("입력받은 정수의 값은 : "+value+"입니다."); //value의 값을 출력
            System.out.println("너무커!");
        }
        else{ //if문에 해당되는 조건이 아닌 그외
            System.out.println("잘못 입력하셨습니다.");
        }
    }
}

else문은 if문에 해당하지 않는 나머지에 해당되는 경우 수행된다.

즉 10보다 큰 경우가 아닌 10보다 작은 값이 입력되면 else문에 있는 메시지가 출력된다.

 

if/else if /else 구문

import java.util.Scanner; // 입력 스트림 사용을 위해 필요한 모듈을 불러온다.

public class basic1 {
    public static void main(String [] args){ //main
        
        Scanner sc=new Scanner(System.in); //sc객체를 생성한다.
        int value=sc.nextInt();// 정수형 변수 value에 값을 입력받는다.

        System.out.println("입력받은 정수의 값은 : "+value+"입니다."); //value의 값을 출력

        if(value >= 10 && value <=100) { // value가 10보다 클경우
            
            System.out.println("너무커!");
        }
        else if(value >= 101){ // 값이 101보다 크면 출력
            System.out.println("너어무 큽니다.");
        }
        else{ //if,else if조건에 해당하지 않을 경우
            System.out.println("값이 작습니다.");
        }
    }
}

else if문은 별도의 조건을 추가할수 있다.

예를 들어 if문만으로 제어가 부족하다면

else if를 여러개 추가할 수도 있다.

 

switch 구문

import java.util.Scanner;
public class basic2 {
    public static void main(String [] args){
        Scanner sc = new Scanner(System.in);
        String ex = sc.next();

        switch(ex){ // string형 ex에 입력된 값을 확인하는 조건문
            case "a":
                System.out.println("해당 문자는 a 입니다."); //a
                break;
            case "b":
                System.out.println("해당 문자는 a 입니다."); //b
                break;
            case "c":
                System.out.println("해당 문자는 a 입니다."); //c
                break;
            default:
                System.out.println("입력값이 잘못되었습니다."); //값이 잘못되었을 경우 기본
                break;
        }   
    }
}

switch문은 case별 조건을 선언한 후 해당 case의 구문을 수행한다.

ex라는 변수에 문자열 값을 받은 후 해당 문자가 abc 세 가지에 속하는지 확인하고

속하지 않는다면 default문의 구문이 수행되며

break 문은 해당 조건문을 빠져나가게 해준다.

 


 

 

300x250

댓글