6일차. 자바 기초
오늘만 수강하면, 자바 기초 강의는 다 수강한다! 알고 있던 기초 내용들이었지만, 다시 되짚으면서 정확하게 알고 가야겠다. 화이팅 🔥
1. 반복문 - while 문(Ch01-17)
1) 조건이 참(true)인 동안 반복수행하기
- 주어진 조건에 맞는 동안(true) 지정된 수행문을 반복적으로 수행하는 제어문
- 조건이 맞지 않으면 수행을 멈추게 됨
👉 조건식에 변수가 들어갈 수도 있는데, 이 때는 변수가 0이 아니면 true로 인식한다.
package ch17;
public class WhileTest {
public static void main(String[] args) {
int num = 1;
int sum = 0 ;
while (num <= 10) {
sum += num;
num++;
}
System.out.println(sum);
System.out.println(num);
}
}
<출력결과>
2. 반복문 - do-while문 (Ch01-18)
1) do-while 문
- 조건과 상관없이 수행을 한 번 하고나서 조건을 체크
package ch18;
import java.util.Scanner;
public class DoWhileTest {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int input;
int sum = 0;
do {
input = scanner.nextInt();
sum += input;
}while(input!=0);
System.out.println(sum);
}
}
<출력결과>
3. 반복문 - for문(Ch01-19)
1) for문의 수행순서
package ch19;
public class ForTest {
public static void main(String[] args) {
int count = 1;
int sum = 0;
for(int i=0; i<10; i++, count++) { //i는 몇번 반복할 것인지(횟수) 체크
sum += count;
}
System.out.println(sum);
int num = 1;
int total = 0;
while(num <= 10) {
total += num;
num ++;
}
System.out.println(total);
}
}
2) 각 반복문은 주로 언제 사용하나요?
3) for문의 문장들은 생략가능하다.
- 초기화식 생략 : 이미 이전에 값이 초기화되어 for 내부에서 값을 지정할 필요가 없는 경우
int i = 0;
for( ; i<5; i++){ // 초기화식 생략
...
}
- 조건식 생략 : 반복 수행에 대한 조건이 수행문 내부에 있는 경우
for(i=0; ; i++){ // 조건식 생략
sum += i;
if(sum>200) break;
}
- 증감식 생략 : 증감식에 대한 연산이 복잡하거나 다른 변수의 연산 결과값에 결정되는 경우
for(i=0; i<5; ) { // 증감식 생략
...
i = (++i) % 10;
}
-
무한 반복
for( ; ; ){ ... }
📍 참고
i+1 과 i++은 다르다.
i+1 자체는 i값이 증가되지 않기 때문에 증가시키기 위해서는 대입 연산자를 써야 한다.
하지만, i++은 i = i+=1, i+= 1 과 동일한 의미이기 때문에, 값을 1씩 증가하려고 한다면 i++을 사용해야 한다.
4. 반복문이 여러 번 포개진 중첩 반복문(Ch01-20)
1) 중첩 반복문
- 반복문 내부에 또 다른 반복문이 있다.
- 외부 반복문과 내부 반복문 간의 변수 값 변화에 유의 하며 구현해야 한다.
package ch20;
public class NestedLoopTest {
public static void main(String[] args) {
int dan = 2;
int count = 1;
for( ; dan <= 9; dan ++) {
for( count=1 ; count <= 9; count++) {
System.out.println(dan + "X" + count + "=" + dan*count);
}
System.out.println(); // 한 줄 띄울때
}
dan = 2;
count =1;
while(dan <=9) {
count = 1 ; // while일때는 count를 초기화해줘야 한다.
while(count <= 9) {
System.out.println(dan + "X" + count + "=" + dan*count);
count ++;
}
dan ++;
}
}
<br>
### 5. 중간에 멈추는 break문, 무시하고 계속 진행하는 continue문(Ch01-21)
1) break문 사용하기
* 감싸고 있는 제어문의 블록을 빠져 나오는 기능(switch문에서도 사용)
* 반복문에서는 주로 조건문(if)와 같이 사용하여 조건에 해당되는 경우 반복 수행을 멈추고 반복문 외부로 수행이 이동
* 여러 반복문이 중첩되어 있는 경우엔 **break문이 포함되어 있는 반복문만 빠져나옴**
```java
package ch21;
public class BreakTest {
public static void main(String[] args) {
int sum = 0;
int num ;
for(num=1; ; num++ ) {
sum += num;
if(sum >= 100)
break; // sum이 100보다 크거나 작으면 멈춘다.
}
System.out.println(sum);
System.out.println(num);
}
}
<출력결과>
👉 14까지 더하면 100보다 커지는 순간이라는 의미이다. 만약에 break를 넣지 않았다면, 14가 아닌 15가 출력 결과로 나왔을 것이다. num++을 한 다음 출력 결과가 나오기 때문이다.
2) continue문 사용하기
- 반복문 내부에서 조건문(if)와 같이 사용하며, 조건이 맞는 경우(true이면) 이후 반복문 블럭 내부의 다른 수행문들을 수행하지 않음.
package ch21;
public class ContinueTest {
public static void main(String[] args) {
int num;
for(num=1; num<=100; num++) {
if ((num % 3) != 0) continue; // 3의 배수가 아니면 건너뛴다.
System.out.println(num);
}
}
}
<출력결과>
출처 : 패스트캠퍼스 국비교육 [Java&Spring boot로 시작하는 웹프로그래밍]
Author And Source
이 문제에 관하여(6일차. 자바 기초), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ssongjh55/6일차.-자바-기초저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)