[Java] 자바 기초(4)

어정윤·2021년 2월 4일
0

Java 스터디

목록 보기
7/12
post-thumbnail

[Java] 자바 기초(4)

1. 선택문

선택문은 조건을 걸고 해당 조건에서만 실행되는 로직이 있는 경우 사용한다.

1-1. if문

조건식이 참이면 if 내부의 문장이 실행되고, 조건식이 거짓이면 if문을 벗어난다.
if문과 if-else문이 있다.

  • if문 실행 예
int a = 4;
if (a == 4) {	// a = 4가 참이면 아래 문장을 실행
	System.out.println("a = 4 입니다.");
}
  • if-else문 실행 예
int a = 4;
if (a == 4) {	// a = 4가 참이면 아래 문장을 실행
	System.out.println("a = 4 입니다.");
} else if (a > 4) {		// a = 4가 거짓이고 a > 4가 참이면 아래 문장을 실행
	System.out.println("a = 4 가 아닙니다.");
} else {	// a = 4와 a > 4가 거짓이면 아래 문장을 실행
	System.out.println("a = 4 가 아닙니다.");
}

1-2. switch문

if-else 문에서는 조건문을 직접 설정할 수 있어서 특정 변수의 값의 범위를 지정할 수 있지만 switch문에서는 그렇게 할 수 없다.

  • 예제
int a = 5;
if (a <= 5) { // 가능
    System.out.println("5 이하");
}
switch (a) {
    case a <= 5: // 불가능
        System.out.println("5 이하");
}

switch문에서는 변수나 조건문의 결과가 case문에서 지정한 값과 같은지 동등비교만 할 수 있다.

break 키워드는 로직 실행을 종료할 수 있다. 로직은 switch문이 종료되거나 break 키워드를 만날 때까지 실행된다.

if-else문은 위에서부터 차례대로 비교하면서 조건문을 비교하지만 switch문은 변수나 조건문의 결과값으로 case문을 바로 찾아간다. 만일 어떤 case문으로도 분기하지 못하는 경우는 default문을 실행한다.

char grade = 'B';
switch (grade) {
    case 'A':
        System.out.println("제일 높은 등급입니다.");
        break;
    case 'B':
        System.out.println("두번째 높은 등급입니다.");	// 출력
        break;
    case 'C':
        System.out.println("세번째 높은 등급입니다.");
        break;
    default:
        System.out.println("잘못된 등급입니다.");
}

switch문을 사용하면 표현하기도 좋고, 가독성이 좋다.

2. 반복문

반복문은 로직을 조건문에 맞게 반복해준다.

2-1. for문

반복하는 횟수가 정해진 경우에 쓰인다.

for (초기문; 조건식; 반복 후 작업) {
	작업문
}
  • 초기문

    for문의 조건식에서 사용하는 변수를 초기화한다. 처음 한번만 수행되며, for문 안에서만 쓰이는 지역변수를 선언할 수 있다.

  • 조건식

    논리형 변수나 논리연산만을 사용할 수 있다. 조건식의 결과가 true인 경우 반복이 계속되고, 조건식의 결과가 false인 경우 반복이 종료되어 for문에서 벗어난다.
    조건식이 비어있거나, true인 경우 무한 반복된다.

  • 반복 후 작업

    작업문이 실행된 후 반복 후 작업이 실행된다. 작업문에 콤마로 분리하여 반복이 한 번 끝나고 난 뒤에 작업할 일들을 나열할 수 있다.

2-2. for-each문

java 1.5 이상부터 사용이 가능하다.
for문과 비슷하지만 훨씬 더 직관적이다.

for (변수 변수이름 : 배열or컨테이너) {
	작업문
}

변수가 배열 혹은 컨테이너의 처음부터 끝까지 돌면서 작업문을 실행한다.

2-3. while문

반복 조건을 처음부터 따지는 경우에 사용된다.
for문과 다르게 while문 조건식에 사용되는 변수는 선언과 초기화가 반드시 되어있어야 한다.
반복문이 실행되면서 조건식을 false로 만들 수 있도록 설계되어야한다. 그렇지 않으면 무한반복된다.

  • 예제
int i = 0;  // 변수의 선언 및 초기화
while (i <= 5) {
    System.out.println("i = " + i);
    i++;
}

while (true) {  // 무한반복
    System.out.println("Hello");
}
while (조건식) {
	작업문
}

2-4. do-while문

반본 조건을 나중에 따지는 경우에 사용된다.
while문과 달리 최초 한번은 무조건 실행한다.
while문과 같이 do-while문에 쓰이는 변수는 선언과 초기화가 반드시 되어있어야 한다.

do {
	작업문
} while (조건식)
profile
성장ing

0개의 댓글