[Java] 제어문

GilLog·2020년 12월 7일
0

Java

목록 보기
11/29

백기선님의 live-study 4주차 과제: 제어문 #4

4주차 live-study 과제 제어문

목표

자바가 제공하는 제어문을 학습하세요.

학습할 것 (필수)

선택문
반복문


🙆‍♂️ import 🙇‍♂️

자바(Java)의 기초 박살내기 - 제어문(Control Statement)[너구리해적단]

자바 인터프리터, 컴파일언어?(Java Interpreter, compiler)[OracleJava]


제어문

Java에서 Interpreter는 위에서 아래 방향으로, 오른쪽에서 왼쪽으로 프로그램을 기계어로 번역해 읽어 나간다.
Interpreter는 고급언어로 작성된 프로그램을 한즐씩 번역해서 OS에서 인식하는 기계어로 번역하는 역할 수행

Java Interpreter는 JAVAC명령으로 Java 프로그램을 중간 형태인 Java Bytecode로 Compile하고 이를 한 줄씩 해석하여 기계어로 번역


Interpreter의 번역 흐름을 변경 할 수 있는 것이 제어문이다.

제어문은 프로그램의 실행을 조절하고 흐름을 제어하는 역할을 수행 한다.

기본적으로 명령어는 위에서 아래로 차례대로 처리(순차 처리) 되는 방식인데, 조건에 따라 처리하는 명령을 달리(선택 처리) 하거나 반복적으로 처리(반복 처리)해야 할때 사용하는 것이 제어문이다.

선택 처리 (조건 분기)

단일 if 문

if문은 기본적인 조건문으로, 형식은 if(조건식){조건 true시 실행 문장;} 이다.

int myAge = 26;
int otherGuyAge = 29;

if (myAge < otherGuyAge) {
    System.out.println("형!");
}

if ~ else 문

if ~ else문은 기본 if에서 if조건이 false인 상황에서 실행하는 문장이 추가된 조건문이다.

형식은 아래와 같다.

int myAge = 26;
int otherGuyAge = 29;
if(myAge < otherGuyAge){
    System.out.println("형!");
} else {
    System.out.println("야!");
}

다중 if ~ else 문

다중 if ~ else 문if ~ else문 보다 else if()의 무한정 추가가 가능해 조건을 더 세세하게 제어 할 수 있다.

int myAge = 26;
int otherGuyAge = 29;
if(myAge < otherGuyAge){
    System.out.println("형!");
} else if(myAge == otherGuyAge){
    System.out.println("친구야!");
} else {
    System.out.println("야!");
}

switch - case 문

switch - case문은 switch(수식)에 결과 값에 따라 case문에서 실행되는 문장을 제어할 수 있다.
수식의 결과 타입은 논리형은 불가능하고, 정수형이나 문자형 타입만 올 수 있다.

break를 만나게 되면 해당 case를 빠져나와 다음 case문으로 넘겨져간다.
거쳐가는 case안에 내용이 실행되지 않음.

case문에서 일치하는 값이 없을 경우 default안의 코드를 실행 시킨다.

switch(myAge){
    case 19:
        System.out.println("고3");
        break;
    case 20:
        System.out.println("대학생");
        break;
    case 21:
        System.out.println("군대");
        break;
    default:
        System.out.println("미설정");
        break;
}

반복 처리

for 문

for문은 가장 기본적인 반복문으로써, for(초기식; 조건식; 증감식;)으로 구성된 형태이다.

여기서 초기식은 처음 for문이 실행 되었을 때 단 한번만 실행 후 조건식으로 이동 한다.

조건식을 만족하는 경우 for문의 body안에 있는 코드를 모두 처리하고 증감식으로 이동한다.

for(int i = 0 ; i < 27; i++){
    System.out.println(i);
}

while문

while문은 조건식이 true일 경우 무한으로 body안의 코드를 실행 시키고, 조건식이 false가 되었을 경우에 실행을 종료하는 반복문이다.

while(myAge < 27){
    myAge++;
    System.out.println(myAge);
}

do while문

do while문은 while문과 차이점으로, 적어도 한번은 body부분의 코드가 실행 되면서 반복한다는 것이다.

그 후는 while문 안의 조건식이 true일 경우에 body를 반복 실행하는 반복문이다.

do{
    System.out.println("무조건 한번은 실행");
}
while(false);

무한 반복문

앞서 살펴본 for, while, do while문을 이용하면 무한 반복문을 만들 수 있다.

for(;;){
    System.out.println("무한 for문");
}

while(ture){
    System.out.println("무한 while문");
}

do{
    System.out.println("무한 do while문");
} while(true)
profile
🚀 기록보단 길록을 20.10 ~ 22.02 ⭐ Move To : https://gil-log.github.io/

0개의 댓글