[이론] 3. 제어문 (조건문과 반복문)
- 조건문
(1)if문
①형식
if (조건문){
조건성립시 시행할 명령문;
}
else if(조건문){
}
else {
}
*else if 는 갯수제한없이 사용된다.
②비교 연산자
-
x < y
-
x > y
-
x == y
-
x ≠ y
-
x ≥ y
-
x ≤ y
③ 조건판단
-
and(&&)
-
or(||)
-
not(!)
④ contain 메소드 : List 안에 해당 아이템이 있는지 조사하는 함수.
* LIST자료형에서 사용하는 함수이다.
∨ 사용방법: .contains( 확인할 조건 )
⇒ 모듈처럼 사용!
(2) switch ~case문
①형식
switch(변수){
case 1:
실행할 문장1;
break;
case 2:
실행할 문장2;
break;
case 3:
실행할 문장3;
break;
.
.
.
default:
실행할 문장n;
break;
}
※ case마다 마지막에 break써주는게 중요하다. 안그러면 그다음꺼까지 그냥 출력해버린다...
ex) 7를 입력하고 sunday을 출력하자!
public class switchtest{
public static void main(String[] args){
int day=7;
String dayString="";
switch (day) {
case 1: dayString="monday";
break;
case 2: dayString="tuesday";
break;
case 3: dayString="wednesday";
break;
case 4: dayString="thursday";
break;
case 5: dayString="friday";
break;
case 6: dayString="saturday";
break;
case 7: dayString="sunday";
break;
default: dayString="invaild week";
break;
}
system.out.println(dayString);
}
}
- 반복문
(3) While 문
①형식
while (조건문){
문장;
문장;
.
.
.
}
*무한루프를 돌리는 방법: 조건문=TRUE ⇒ ctrl +c를 눌러야 조건문을 빠져나간다.
②break문
break를 만남과 동시에 가까운 반복문이 종료된다.
③continue문
continue를 만남과 동시에 반복문에 처음부분으로 돌아간다.
④do ~while문: while문과 동일한 역할이며, 형식만 조금다르다.
do{
}while(조건식);
(4) for문
①형식
for( 초기값;조건문;증가값){
}
②break문
break를 만남과 동시에 가까운 반복문이 종료된다.
∨ 만약 중첩 for문에서 동시에 종료하려면?
반복문에 이름(여기선 Label)을 붙이고, break 이름;을 하면 바깥쪽 for문까지 종료된다.
Label: for (){
for (){
break Label;
}
}
③continue문
continue를 만남과 동시에 반복문에 처음부분으로 돌아간다.
(5) for each 문
:for 문을 사용하되 조건식 부분이 다르다
①예시
<for를 사용한 조건문>
string[] num={"one","two","three"};
for (int i=0;i<3;i++)
{
system.out.println(num[i]);
}
<for each를 사용한 조건문>
string[] num={"one","two","three"};
for (string number:num){
system.out.println(num[i]);
}
∨ number는 i와 같은 역할을 한다.
▶ 단점:
-
input값이 하나씩 number에 배정되 반복된다.
-
증가치를 지정할 수 없어 1씩밖에 증가 못한다.