비교문?
주어진 조건에 결과에 따라 실행 문장을 달리하여 전혀 다른 결과를 얻기 위해 사용하는 제어문 중 하나
비교문 : if 문 & switch문
어떤 상황에 따라 동작 시키고자 하는 명령어(들)을 선택할 때 사용하는 문장
ㅇ if문
- true 아니면 false, boolean형의 결과를 가지는 조건식 필요
- 조건식이 참인 경우 중괄호 안에 있는 문장을 수행
- 단순 if문, 단일if~else문, 다중 if문
- 만약 if에서 메소드를 중지 시키고자 하는 경우, 반복문 안에서 쓰는 break를 쓸 수 없기 때문에, return을 쓰면 된다.
<<if 문을 쓰는 형식>>
ㅁ 단순 if문
if(조건식)
조건식이 참일 때 수행한 문장;
------------------------------------
a;
b;
if(조건식)
c;
d;
e;
if가 나온다고 해서 else가 꼭 나와야 하는 것은 아니다.
내가 해결하고자 하는 식에 따라 사용하면 된다.
------------------------------------
ㅁ 단일 if ~ else문
조건식을 만족하는 경우와 만족하지 않는 경우를 모두 나타낼 때 사용
if ( 조건식 )
조건식이 참일 때 동작할 명령어
else
조건식이 거짓일 때 동작할 명령어
------------------------------------
a;
b;
c;
if (조건식)
d;
else
e;
f;
g;
f와 g는 if와 상관없이(참이든 거짓이든)만나는 문장
------------------------------------
a;
b;
c;
if (조건식)
{
d;
e;
}
else
{
f;
g;
}
h;
i;
조건식이 참일 때 실행하여야 하는 명령어가 1개가 아닐 때 {}로 묶어주어야 한다. {}가 없으면 오류가 발생한다.
ㅁ 다중 if문( if - else if - else)
하나의 상황에 여러 조건을 비교하는 경우 사용하기 좋다.
나이에 따라 입장료가 다르거나, 나이에 따라 주는게 다르다면!
------------------------------------
a;
b;
if(조건식1)
c;
else if(조건식2)
d;
else if(조건식3)
e;
else
f;
g;
h;
if문에서 else if는 if(조건문1)이 아니라면 else if(조건문2)는 어떠냐고 물어보는 것. 마지막 else는 if와 else if 조건문 모두 아닐 때 걸리는 것
------------------------------------
if(조건식1)
조건식1이 참일 때 수행할 문장;
else if(조건식2)
조건식1이 거짓이고, 조건식2에 참일 때 수행할 문장;
else
조건식1과 조건식2, 모두 만족하지 않을 때 수행할 문장;
ㅁ 중첩 if문
a;
b;
if(조건식1)
if(조건식 2)
c;
else
d;
else
if(조건식3)
e;
else
f;
g;
h;
if 문 안에 if가 있다고 해서 중첩if문
ㅁ switch문
다양한 처리문을 두고 조건값에 의해 하나의 처리문이나 여러 개의 처리문을 한번에 수행하는 데 유용한 비교문
if문은 조건값이 boolean형인 것에 비해 switch문의 조건값은 정수형(byte, short, in)과 문자형(char)인 것이 다르다.
참고로 switch문에서 long형이나 문자열, boolean형과 실수형은 사용할 수 없다.
case문의 조건값을 정렬시킬 필요는 없다.
switch 문에서 문자열 사용일 불가능 했었지만, 자바 7부터는 switch-case문에 문자열을 넣고 비교 할 수 있다.
<< switch 문의 형식 >>
switch( 인자값 )
{
case 값1:
수행문; break;
case 값2:
수행문; break;
….
case 값n:
수행문; break;
default:
수행문; break;
}
break문은 하나의 조건값마다 넣어주는 것이 적당하면 만약 없을 때에는 다음 break문을 만날 때까지 모든 수행문을 처리한다.
받은 인자값이 case문의 조건값1에서 조건값n까지 일치하는 것이 단 하나도 없다면 default를 수행한다.
'Java | spring > Java Basic' 카테고리의 다른 글
call by value 값호출 VS 참조 호출 call by reference (0) | 2019.05.07 |
---|---|
자바 JAVA : 반복문(for / while / do while) (0) | 2019.05.03 |
자바 기초, 배열 정리 (0) | 2019.05.03 |
자바 기초, 연산자 총정리 (0) | 2019.05.03 |
자바 기초, 문자열 String (0) | 2019.05.03 |
댓글