3_java - if문

jin·2022년 4월 21일
0

if문(조건문)

if

if문은 어떠한 조건이나 조건식에 대해 참과 거짓으로 판별하여 실행한다.

5/05 추가
단순 if문은 조건식이 true 일 때만 실행문을 수행한다. 조건식에는 true 또는 false를 산출 할 수 있는 연산식이나 논릿값, 변수가 올 수 있다. 조건식이 true일 때 수행할 실행문이 하나라면 {}를 생략할 수 있다.

작성방법

if (조건식 또는 조건) {
해당 조건식이나 조건이 이면 해당 블록에 작성된 코드 실행
}

int a = 10, b = 10;
if (a == b) {
	System.out.println("실행 O");
}
if (a != b) {
	System.out.println("실행 X"); //이 부분은 실행이 안된다.
}
// 예) 짝수 판별
int num = 8;
if (num%2 == 0 ) {
	System.out.println("짝수");
}
if (num%2 != 0) {
	System.out.println("홀수"); // 이 부분은 실행이 안된다.
}

단일뿐만 아닌 중첩 if문도 가능하다.

if (조건문1) {
  if (조건문 안의 조건문) {
  조건문1이 참일 경우 
  중첩 if문의 조건을 보고 해당 if문 블록 조건문이 참이라면 여기도 실행됨
  }
 조건문1이 참이라면 여기도 실행됨
}

예시) Scanner class import 가정

Scanner sc = new Scanner(System.in);
int num = 10;
int inputNumOne, int inputNumTwo;

System.out.print("숫자 입력 : ");
inputNumOne = sc.nextInt();

if (num==inputNumOne) {
  System.out.println("제시된 숫자와 첫번째 입력 숫자가 같음");
  System.out.print("두번째 숫자 입력");
  inputNumTwo = sc.nextInt();
  if (num==inputNumTwo) {//두번째로 입력한 숫자가 같으면 조건문 실행됨
    System.out.println("두번째 입력한 숫자와 제시된 숫자가 같음");
  }
}

else

if문의 조건식에서 참과 거짓을 구분하여 각기 실행할때 사용함

5/05 추가
if ~ else 문은 조건식의 true나 false에 따라 다른 실행문을 수행할 때 사용한다.

작성방법

if(조건식){
조건이 일때 수행할 문장;
..
}else {
조건이 거짓일때 수행할 문장;
..
}
참만 필요한 단일 if문 경우 else는 생략 가능하다.
예시)

int a=10, b=5;

if (a==b) { // 해당 조건이 참일때 수행
  System.out.println("a와 b는 같지않음);
} else { // 위의 조건이 거짓일때 수행
  // 위의 조건은 거짓이므로 여기가 실행된다
  System.out.println("a와 b는 같음");
}

else if(다중 if문)

if만 가지고도 코드를 작성할 수 있지만 else if를 사용할 경우 if문 여러개보다 효율적으로 코드를 작성할 수 있다.

5/05 추가
조건이 다양할 때는 다중 if 문으로 표현하면 좋다. if문 다음에 else if 문을 연속 추가해 각 조건을 차례대로 점검한 후 만족하는 실행문을 수행한다.

작성방법

if(조건식1){
조건식1이 일 때, 실행할 문장;
}else if(조건식2){
조건식 1이 거짓이며 조건식2가 일 때, 실행할 문장;
}else if(조건식3){
조건식 1과 2가 거짓이며 조건식3이 일 때, 실행할 문장;
}else{
위 조건을 모두 만족하지 않을 때, 실행할 문장;
}
예시) Scanner class import 가정

System.out.println("1.사과 2.포도 3.감");
int select = 1;
System.out.println("선택한 번호 : " + select);
if (select == 1 ) {
	System.out.println("1.사과");
} else if (select == 2) {
	System.out.println("2.포도");
} else if (select == 3){
	System.out.println("3. 감");
} else {
	System.err.println("오류오류오류");
}
System.out.println();

덧. 자기주도 학습이라고 저번 강의정리 포스팅에 언급했는데 if문은 다음주차 진도였다. 예정 진도 상관없이 되는한 최대로 진행하는걸 목표를 하고 있다.
if문과 더불어 if문에 관련된 문제들을 푸느라 4~5일치 한번에 작성하게 되었다.

*인용글은 한빛아카데미 - 쉽게 배우는 자바 프로그래밍 / 우종정 지음 참조했습니다.

0개의 댓글