본문 바로가기
Java

[Java] 반복문(Loop) 다루기(for, while)

by coding_su 2023. 1. 18.

📝반복문(Loop) 다루기 (for, while)

1, 2, 3, 4, 5를 한줄로 출력하고싶은데 아래 코드처럼 입력하면 번거롭고 너무 많은 코드를 입력해야하기때문에 반복문을 사용한다

System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);

 

for문의 기본 구조는 for(반복할 변수의 초기 값; 반복 조건; 반복할 변수를 변화) { } 이다

i++ 문법은 i의 값에 1을 더한 후 다시 i에 저장한다는 것(i = i + 1) 메모리를 빼고싶으면 1--로 입력한다

 

아래 코드의 cpu 실행 순서 int i = 0; i에 0을 저장하고 → i < 5; 결과 값이 트루일때 → 중괄호{}안 int data = i + 1; → System.out.println(data) 출력 → 중괄호가 끝나면 i++ i에 1을 저장하고 → 다시 i < 5; 결과 값이 트루일때 → 다시 중괄호{}안 int data = i + 1; → System.out.println(data) 출력 ...

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

 

for문 코드 사용 ex)

// 1 ~ 100까지의 홀수를 다 더하기
int total = 0;
for( int i = 1; i <= 100; i++ ) {
    if(i % 2 == 1) {
        System.out.println(i);
        total = total + i;
    }
}
System.out.println(total);

// for루프로 검색기능 만들기
// for문으로 keyword가 포함된 전화번호의 사람만 이름과 폰번을 화면에 츨력

String keyword = "22";
for(Member member : MemberList) {
	if(member.getPhone().contains(keyword)) {
		System.out.println( member.getName() + " " + member.getPhone() );
	}
}

 

+ for each 반복문 사용하기

 (왼쪽 리스트의 첫번째 가져와서 오른쪽 변수에 저장, 두번째 가져와서 오른쪽 변수에 저장하는 방식)

for(String data : nameList) {
	System.out.println(data);
}

 

while문을 아래 코드처럼 작성할때 i++ 을 입력해주지 않으면 무한루프로 돌아간다

int i = 1;
while( i <= 5 ) {
    System.out.println(i);
    i++;
}

 

while문 코드 사용 ex)

// 1~100까지의 짝수만 다 더하기
i = 1;
total = 0;
while( i <= 100 ) {
    if (i % 2 == 0) {
        total = total + i;
    }
    i++;
}
System.out.println(total);

// 1~100까지 다 더하는데 합이 78보다 크면 멈춘다
total = 0;
for(int k = 1; k <=100; k++) {
    total = total + k;
    if (total > 78) {
        break;
    }
}
System.out.println(total);

// 무한 루프
while (true) {
    System.out.println("무한루프");
}

댓글