붓, 그리다
다중IF문, While문, For문 본문
[ 다중 if문 ]
1.조건식이 많아져서 복잡
2.실행속도가 느려진다.
[ switch~case ]
1) 조건식이 단순
2) 실행속도가 빠르다.
switch(조건식){ //1)무조건 숫자가 나올 수있도록 조건식
을 체크
case 숫자1: //2)범위를 지정할 수없다.
실행문장;
break;//탈출문 3)break문을 반드시 사용
case 숫자2:
실행문장;
break;
case 숫자3:
실행문장;
break;
...
default: //->다중 if문의 else (생략가능)
실행n;
-> 범위가 한정되어있을 경우 사용
package j0529;
//다중 if문 대용=>사용자로부터 값을 입력->짝수/홀수(1~10까지의 숫자만 입력)
public class SwitchTest2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int su=8;
//2의 배수
//(2)switch ~case
switch(su) { //(0~10까지만 입력)
case 0:
case 2:
case 4:
case 6:
case 8:
case 10:
System.out.println(su+"은 짝수입니다.");
break;//생략하면 조건에 만족하지 않은 구문까지도 실행이 된다.
case 1: case 3: case 5: case 7: case 9:
System.out.println(su+"은 홀수입니다.");
break;
default // 0~10 이외의 숫자를 입력할 경우
System.out.println("입력 받을 수는 0~10까지만 입력하세요");
// break 생략 가능
}//switch
System.out.println("switch구문 종료");
}
}
3) 범위를 지정할 수 없을 경우 -> 다중 if문
4) case '1' : 문자가 오는 예외, 아스키코드값
case 65 => 'A'
case 'A' => 숫자로 계산에서 처리
5) 조건식에서도 문자 사용이 가능하다
[ 반복문 ] while
- 어느 특정 조건에 따라서 반복적으로 수행되는 문장
- 특징 : 조건식이 처음부터 거짓이면 한번도 수행하지 않는다.
1) 반복할 횟수가 정해져 있는 경우 : for문, while문
2) 반복할 횟수가 정해져 있지 않은 경우 : while문
형식)
while(조건식){ // 참이면 실행1 //참이면 3
수행할 구문1; // 실행2 // 실행 4
수행할 구문2
}
-> 조건식이 거짓이 되는 동안 수행할 구문1을 계속 실행
public class WhileTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
//반드시 반복할 횟수를 기억할 변수를 선언
//무한루프 -> 조건식이 항상 참이기 때문에 무한적으로 계속 수행이 되는 경우
int i=1;
while(i<=10) {
System.out.println("반복할 횟수가 있는 while문"+i);
i++; // i=i+1
} // 블록처리를 해야만 i++까지 실행함
System.out.println("while문 종료");
}
}
while문의 조건이 항상 참이 되도록 하려면 true를 넣는다.(무한루프)
public class WhileTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
//반드시 반복할 횟수를 기억할 변수를 선언
//무한루프 -> 조건식이 항상 참이기 때문에 무한적으로 계속 수행이 되는 경우
int i=1;
while(true) { // c언어 : while(1)
System.out.println("반복할 횟수가 있는 while문"+i);
i++; // i=i+1
} // 블록처리를 해야만 i++까지 실행함
//System.out.println("while문 종료");
}
}
[ do-while ]
- 조건식을 체크하지 않고 먼저 문장을 수행
- 나중에 조건식을 체크
- 조건이 참이면 계속해서 수행, 거짓이 될 때까지 수행
- 특징 : 조건식이 거짓이라도 한번은 수행이 된다.
do {수행할 구문1;
수행할 구문2;
}while(조건식);
-> 조건식이 뒤에 나오고 반드시 ;을 사용하는 유일한 제어문
[ FOR문 ] ★★★
for(초기식;조건식;증감식)
실행구문;
- 초기식 : 반복할 구문을 사용(변수 선언)
- 초기식이 int=1 이면 C++언어
for(초기식(int=1);조건식;증감식)
실행구문;
- C언어 : for문 밖에서 먼저 반복할 변수를 선언
int=1
for(초기식(i=1);조건식;증감식)
실행구문;
1) C++ 유형
System.out.println("1. For문의 유형 (c++유형)");
for(int i=1;i<=5;i++)
System.out.println("반복문 연습"+i);
System.out.println("for문 종료(C++)");
2) C언어 유형
System.out.println("2. For문의 유형 (c언어유형)");
int k;
for(k=10;k>5;k--)
System.out.println("연습"+k);
System.out.println("for문 종료(C언어)");
3) 초기식이 생략이 되는 경우
System.out.println("3. 초기식이 생략되는 경우");
int k=10;
for(;k>5;k--) // 초기식이 생략
System.out.println(k+"테스트");
4) 최소한의 for문 구조(증감식도 생략이 되는 경우)
System.out.println("4. 최소한의 for문 구조(증감식도 생략이 가능)");
int c=1;
//c++; //증감식은 생략이 가능하나 for문 밖에 코딩하면 인식이 안됨(무한루프)
for(;c<=20;) {
System.out.println("20번 반목"+c);
c++;
}
-> 증감식은 for문 내부에 사용해야 한다.
*출력할 때 \t을 쓰면 탭키를 누른만큼 이동
5) 합계과 곱 구하기
System.out.println("5. 합계, 곱을 동시에 구하기");
//1부터 4까지 구하기 : 1+2+3+4,,,,+100=?
// 변수, 변수의 개수를 따져야 함 => 합계를 기억할 변수, 반복할 횟수 (2개)
int sum=0; //반복할 횟수 i => for문
int gap=1; //곱을 저장할 변수
for(int i=1;i<=4;i++) {
sum +=i; //대입연산자, sum=sum+i
gap*=i; // gop=gop*i
}
System.out.println("최종합계(sum)="+sum);
System.out.println("최종곱(gop)="+gap);
'JAVA > Basic' 카테고리의 다른 글
제어문 2 (0) | 2017.06.16 |
---|---|
객체지향언어 (0) | 2017.06.16 |
이클립스 설치 및 환경설정 (0) | 2017.06.16 |
자바의 특징, 변수 (0) | 2017.06.16 |
환경설정 2 (0) | 2017.06.16 |
Comments