조건문
내포된 if문
- if, else if, else는 모두 다른 if문을 포함 할 수 있다.
if (조건식) {
if (조건식) {
}
} else if (조건식) {
if (조건식) {
}
} else {
if (조건식) {
}
switch문
- 하나의 조건식으로 많은 경우의 수 처리 가능
- 처리할 경우의 수가 많을 경우 if보다 switch가 유리
- 조건식과 값은 정수, 문자, 문자열만 가능하며 실수double도 안됨. 다른값과 중복 불가능
- 조건식과 값은 범위 비교 불가능. 정확한 값만 비교 가능
switch (조건식) {
case1 값 : // 괄호 없음
수행문;
break; // break가 없으면 case2의 수행문까지 실행 됨.
case2 값 :
수행문;
break;
default : //if문의 else와 같이 모든 값이 false일때 실행. 생략 가능.
// 고객의 등급에 따라서 적립포인트를 계산해서 출력하기
// 골드등급 - 5% 적립
// 실버등급 - 2% 적립
// 브론즈등급 - 1% 적립
// 현재 고객 '띵윈'의 등급은 실버임
String name = "띵윈";
String grade = "실버";
int orderPrice = "450_000"
int point = 0; // 적립포인트가 될 예정
switch (grade) { // 등급에 따라 적립포인트가 나뉘므로 조건식은 grade
case1 "골드" :
point = (int) (orderPrice * 0.05) // 실수->정수로 형변환
break;
case2 "실버" :
point = (int) (orderPrice * 0.02)
break;
case3 "브론즈" :
point = (int) (orderPrice * 0.01)
break;
}
System.out.println(point) //적립포인트 출력
반복문
- 제시된 조건이 true일동안 블록내{}에서 수행문을 반복 실행
- 주로 반복 횟수를 알때는 for, 모를때는 while을 씀
for문
- 초기화식, 조건식, 증감식으로 구성되어있음
- 초기화식에서 선언한 변수는 조건식, 증감식을 포함한 for문 내에서만 사용 가능
for문의 다양한 형태
1. 초기화식 생략
초기화식;
for (; 조건식; 증감식)
2. 증감식 생략
for (초기화식; 조건식;){
수행문;
증감식;
}
3. 초기화식, 증감식 생략
초기화식;
for(; 조건식;){
수행문;
증감식;
}
4. 초기화식, 조건식, 증감식 모두 생략
for(;;){
수행문; //수행문 무한반복됨
}
반복문 제어
- break: 반복문을 종료시킨 뒤 완전히 빠져나감. switch문에서도 사용
- continue: 남아있는 수행문을 건너뛰고 조건식으로 이동
배열
정의
- 여러개의 데이터를 저장 할 수 있는 저장구조. 하나의 변수명으로 여러데이터 관리
- 값이 저장된 순서대로 번호(인덱스)가 매겨짐.
- 동일한 타입의 값만 저장 가능
- 다른 타입의 값을 담기 위해서는 새로운 배열을 생성해야 함.
배열의 생성
배열을 생성하는 방법
1.
int[] x = new int[3]; // new int[3]으로 방 5개를 생성. 이 부분은 공백 불가
x[0] = 1;
x[1] = 2;
x[2] = 3;
2. 생성과 동시에 초기화
int[] x = {10, 20, 30};
- 배열을 첫 생성하고 초기화를 하지 않을 시, 정수와 실수에는 0이,
문자열에는 null이 들어있음.