JAVA/JAVA
Java | 반복문_For문
pathas
2020. 1. 17. 16:33
★반복문
특정 조건에 만족하는 동안 코드를 반복해서 실행하는 구문
코드의 라인수가 많아지면 컴퓨터 실행속도가 저하되기 때문에
반복되는 코드들을 반복문으로 묶어서 작성하면 효율적임
☆For문
반복하는 횟수가 정해져 있는 경우에 사용
반복 횟수를 관리할 수 있기 때문에 반복문 중에서 가장 많이 쓰임
형식
for(① 초기화식; ② 조건식; ④ 증감식){
③ Java Code ;
}
for문 흐름
- 초기화식 설정
- 조건식 체크
- 코드 실행
- 증감식
- 조건식 체크
- 코드 실행
- 증감식
- ..... 조건식이 거짓이 될 때까지 실행
유형1_C++
초기화식에서 초기값 변수를 선언하는 유형
C++ 언어에서 사용하는 형식이라고 함
public class ForTest {
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
// int i = 1; 로 초기값 변수 선언
System.out.println("for문 연습" + i);
}
/*
for문 연습1
for문 연습2
for문 연습3
*/
}
}
유형2_C
for문 밖에서 초기화식에 해당하는 변수를 선언하는 유형
C언어에서 사용하는 형식이라고 함
public class ForTest {
public static void main(String[] args) {
int k;
// for문 밖에서 k 변수 선언
for (k = 10; k > 7; k--) {
System.out.println("Test" + k);
}
/*
Test10
Test9
Test8
*/
}
}
유형3_초기화식 생략
초기화식 전체가 for문 밖에서 작성되어 for문 내부에서 초기화식 작성이 생략된 유형
이미 변수가 다른 곳에서 초기화되어 중복으로 초기화할 필요가 없을 때 생략
public class ForTest {
public static void main(String[] args) {
int k = 10;
// 초기화식이 for문 밖에서 작성
for (; k > 7; k--) {
// 초기화식 생략
System.out.println("Test" + k);
}
/*
Test10
Test9
Test8
*/
}
}
유형4_증감식 생략
증감식을 생략할 수는 있지만 for문 안에 작성되어야 함
증감식 연산이 복잡하거나 다른 연산 결과에 영향을 받는 경우 생략
public class ForTest {
public static void main(String[] args) {
for(int c = 1; c <= 3; ) {
System.out.println("3번 반복"+c);
c++;
}
/*
3번 반복1
3번 반복2
3번 반복3
*/
// 무한 Loop
c++;
for(int c = 1; c <= 3; ) {
System.out.println("3번 반복"+c);
}
/*
증감식이 for문 밖에 작성되면
for문에 영향을 미치지 못하기 때문에
무한 루프가 발생함
*/
}
}
유형5_조건식 생략
for문의 수행을 멈추기 위해 for문 내부에 if문으로 조건문을 작성하는 경우
public class ForTest {
public static void main(String[] args) {
int sum = 0;
for (int i = 0; ; i++) {
sum += i;
if (sum > 200)
break;
// for문 내부에 if문으로 반복을 중단할 조건을 작성
}
System.out.println("sum: " + sum);
// sum: 210
}
}
유형6_요소 모두 생략
모든 요소를 생략하고 무한 반복하는 경우에 사용
while(true)와 동일하게 동작함
public class ForTest {
public static void main(String[] args) {
for(;;) {
System.out.println("무한 반복");
}
/*
무한 반복
무한 반복
무한 반복
........
*/
}
}
사용례_1부터 100까지의 합 구하기
public class ForTest {
public static void main(String[] args) {
int sum = 0;
for(int i = 1; i<=100; i++) {
sum += i;
}
System.out.println("sum: "+sum);
// sum: 5050
}
}
소스코드 작성시 반복되는 구문을 작성할 때 가장 많이 사용되는 For문에 대해 살펴보았습니다.
For문에도 여러가지 유형이 있고 아주 다양한 상황에서 활용된다고 하기 때문에
For문에 대해 자세히 알아두고 반복 숙달 해두면 프로그램 작성시 도움이 될 것입니다.