Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 팩토리얼재귀
- 누승재귀
- 변수명명규칙
- 효율적인연산
- 변수의 초기화
- 자바별찍기
- 클래스배열
- SQL
- 오라클
- 자바수우미양가
- 자바기타제어자
- 자바자료형
- 자바함수
- 자바접근지정자
- 자바실행방법
- 오버로딩
- 자바if문
- 자바형식
- 자바클래스
- 겟셋함수
- 기타제어자
- 자바switch문
- 연산자우선순위
- read()함수
- 중첩for문
- 자바제어문
- 자바연산자
- 반복문라벨
- 자바상수
- 프로그래머스
Archives
- Today
- Total
h-i-s-t-o-r-y
[Java] 제어문 (control statement) - 조건문과 반복문 본문
▷ 제어문 ?
프로그램의 흐름(flow)을 바꾸어 주는 문장
- 조건문 - if문, if ~ else문
- 분기문 - switch문
- 반복문 - for문 , foreach문
- 조건반복문 - while문, do~while문
- 기타 - break문, continue문
▷ 조건문 - if문
if (condition) {
조건식이 참이면 수행함
}
int n = 11;
if(n%2 == 0) { // 짝수라면 짝수 출력 - 2로 나누어 떨어지는 정수 2n
System.out.println("even number");
}
if(n%2 == 1) { // 홀수라면 홀수 출력 - 2로 나누어 떨어지지 않는 정수 2n+1
System.out.println("odd number");
}
// ** 0은 짝수도 홀수도 아니다.
▷ 분기문 - switch문
switch (key) { // key 값: 정수, 문자열, 수식, 변수
case value : // value 값: 변수X, [리터럴] 만 사용가능
break;
default: // default: 모든 case 외의 경우 수행할 코드
break;
}
int n = 11;
switch ( n%2 ) {
case 0:
System.out.println("even number");
break;
default:
System.out.println("odd number");
break;
}
▷ 반복문 - for문
for (int i = 0; i < args.length; i++) {
// (초기값; 조건식; 증감연산자)
// 초기값을 증감시키면서 조건식을 만족하는 동안 {} 안을 반복함
}
// for문에서 초기식, 증감식 없어도됨
// for( ; ; ) -> 무한루프
// 1~10 까지의 합을 구해서 출력
int sum = 0;
for (int i = 1; i <= 10; i++) {
if( i==10 ) {
System.out.print(i);
}
if(i != 10) {
System.out.print(i+ "+");
}
sum += i;
}
System.out.println("=" + sum);
> 변수 i 선언 위치 차이점 ?
int sum = 0;
int i = 1;
//main함수 안에서 변수 선언 - main, for문 안에서 모두 사용가능한 전역변수
for (int i = 1; i <= 10; i++) {
//for문 안에서 초기식 변수 선언 - for문 안에서'만' 사용되는 지역변수
System.out.printf("%d+", i);
sum += i;
}
> 조건식 작성에 주의
int sum = 0;
for (int i = 1; i >= 10; i++) //조건식이 거짓이므로 for구문이 하나도 실행안됨
{
System.out.printf("%d+", i);
sum += i;
}
System.out.printf("\\b=%d\\n", sum);
▷ 조건반복문 - while문
while (condition) {
조건식이 참일 동안 반복함
}
boolean flag = false; // !flag = true;
while (flag) { // 조건식이 거짓이므로 실행X
System.out.println("홍길동");
}
System.out.println("END");
// while문 사용해 홍길동 10번 출력
int count = 1;
while (true) {
System.out.printf("%d - %s\\n", count, "홍길동");
if (count==10) break;
count++;
}
// **좋은 코드는 if문 주지말고 while 조건을 변경하는 것 !
int count = 1;
while (count <= 10) {
System.out.printf("%d - %s\\n", count, "홍길동");
count++;
}
// while문 사용해 1~10까지의 합
int i = 1, sum = 0;
while (i <= 10) {
System.out.printf("%d+",i);
sum += i;
i++;
}
System.out.printf("\\b=%d\\n", sum);
// **조건식에 [증감 연산자] 익숙해질 것..
int i = 0, sum = 0;
while (++i <= 10) { //1~10
System.out.printf("%d+",i);
sum += i;
}
System.out.printf("\\b=%d\\n", sum);
int i = 0, sum = 0;
while (i++ < 10) { //1~10
System.out.printf("%d+",i);
sum += i;
}
System.out.printf("\\b=%d\\n", sum);
> for문과 while문 차이 ?
for문 - 반복문 - 반복횟수가 정해져 있음
while문 - 조건반복문 - 반복조건이 정해져 있음
▷ do~while문
do {
// 최소한 한번은 무조건 수행하고 난 다음, while문의 조건식을 체크
} while (condition);
▷ Break문과 Return문
Break문 - 반복문을 빠져나감
if ( ) break;
int sum = 0;
for (int i = 1; i <= 10; i++) {
if (i==5) break; //1~4까지 출력하고 끝남 for문 빠져나옴
System.out.printf("%d+", i);
sum += i;
}
System.out.printf("\\b=%d\\n", sum);
Return문 - 함수를 빠져나감
함수() {return;}
if(number==0) {
System.out.println("프로그램 종료");
return ; // main 함수를 빠져나간다 == 프로그램 종료
}
'Java' 카테고리의 다른 글
[Java] 점수 입력받아 수우미양가 출력하기 (0) | 2021.07.12 |
---|---|
[Java] 두 정수 사이의 합 구하기 (0) | 2021.07.12 |
[Java] 연산자 (0) | 2021.07.12 |
[Java] 입력받아 출력하기 (0) | 2021.07.12 |
[Java] 진법 변환과 음수 표현 (0) | 2021.07.12 |
Comments