JAVA
프로그램 제어문
1. 단순 if문
형식
if(조건문)
{
조건에 만족할 경우 실행되는 문장;
}
조건의 결과가 참이면 if문 바로 다음에 나오는 문장을 수행을 하고, 결과가 거짓이면 이 문장을 수행하지 않고 바로 다음문장을 수행 하게된다.
도전과제
소문자를 대문자로 바꾸어서 출력시키기
if~else 문
◈ 자바의 제어문 - I (if-else문, switch-case문) |
제어문에는 크게 3가지로 나눌 수 있습니다..조건문, 반복문, 그리고 그들을 제어할수 있는 제어문으로
나누어져 있죠...조건문에는 조건은 다루는 if문과 if-else문이 있고 선택을 할수 있는 switch-case문이 있습니다.
반복문에는 프로그램에서 제일 많이 쓰이는 while문이 있고 while문과 비슷한 do-while문, 그리고 내가 원하는 만큼만
반복을 시킬수 있는 for문이 있지요...그리고 이들을 제어할수 있는 break,continue,label 문들이 있습니다...
별로 어렵지 않은 내용이니까..쭈~~~~~욱 따라 오시면 될 겁니다...그럼 한가지씩 알아보도록 하죠...
|
■ 단일 if문
단일 if문의 형식....
1. if(조건){
수행문(조건이 참일 경우);
}
2. if(조건){
수행문1(조건이 참일 경우);
}else{
수행문2(조건이 거짓일 경우);
}
|
단일 if문의 형식에는 두가지 종류가 있습니다..2번 부터 보도록 하죠...
실행을 하다가 if문을 만납니다..그럼 조건을 비교하여 조건이 참일 경우
수행문1을 수행하고 거짓을 경우에는 수행문2를 수행합니다...아주 간단하죠..
if문에서는 else를 생략할 수도 있습니다..내가 참일 경우에만 수행을 하는 것이지요...
바로 1번 형식처럼 쓰면 됩니다...그럼 간단하게 예제를 알아 볼까요...
|
■ 단일 if문 예제...
class IfTest1{
public static void main(String[] arg){
int a=5;
if(a<5)
System.out.println("a는 5보다 작다");
else
System.out.println("a는 5보다 작지 않다.");
}
}
|
a에다가 5를 대입시키고 그리고 밑에 보니까 if문이 있네요...조건을 보니까
a<5라고 있는데 우리가 a에다가 5를 넣었죠..비교를 하니까..거짓이 나오네요...
그럼 else 밑에 있는 문을 실행하겠죠...그래서 결과는 "a는 5보다 작지 않다."
라고 나올 것입니다..아주 간단하죠...근데 하나 형식과 틀린것이 있는데 눈치가 빠르신분들은
이미 보았겠죠...중괄호{}가 없지요...{}는 생략을 해도 됩니다...어떤 경우에...
바로 수행문이 하나있을때는 생략을 해도 되지요...하지만 수행문이 하나이상일 경우에는 반드시 {}를
넣어 주어야 합니다...이점 꼭 이해를 하시길 바랍니다..그리고 왠만하면 생략을 하지 말고 한줄이라도
{}를 넣는 습관을 가지세요...아시겠습니까...^^
그럼 이번에는 다중 if문을 알아보죠...
|
■ 다중 if문
다중 if문의 형식....
if(조건1){
수행문1(조건1이 참일 경우);
}else if(조건2){
수행문2(조건1이 거짓이고 조건2가 참일 경우 );
}else{
수행문3(조건1,2가 다 거짓일 경우);
}
|
형식은 단일 if문과 거의 동일합니다..실행을 하다가 if문 만납니다...조건1을 검사하겠죠..
조건1이 참이면 수행문1 을 수행하고 거짓이면 else로 가겠죠...else로 가니까 if문이
또 이네요...그럼 또 조건2를 검사하겠죠...조건2가 참이면,,즉 조건1이 거짓이고 조건2가
참이면 수행문 2를 수행하겠죠...만약 조건2까지 거짓이면 그 밑에 있는 else문으로 가겠죠..
그리고 나서 수행문3를 수행합니다...아주 쉽죠...
그럼 위의 예제에서 하나 잘못된것이 있는데..값이 5가 들어오고 5랑 비교를 하죠..
근데 결과는 "a는 5보다 작습니다" 라고 나오죠 모가 이상하잖아요...
a는 5인데...자 그럼 위의 예제를 이렇게 바꿔보도록 하죠...
|
■ 다중 if문 예제...
class IfTest2{
public static void main(String[] arg){
int a=5;
if(a<5){
System.out.println("a는 5보다 작다");
}else if(a==5){
System.out.println("a는 5하고 같습니다.");
}else{
System.out.println("a는 5보다 작지 않다.");
}
}
}
|
위의 예제가 다중으로 바뀌었죠...소스는 거의 비슷하니까 구지 설명을 할 필요는 없을 것입니다..
그럼 이번에는 switch-case문에 대해서 알아보도록 하죠..
|
■ switch-case문
switch(변수) {
case 값 1:
실행문 1;
break;
case 값 2:
실행문 2;
break;
case 값 3:
실행문 3;
break;
default:
실행문 4;
break;
}
|
변수의 값을 비교해서 실행을 하는 문이지요...
변수의 값과 값1,2,3중에 어느 하나가 같으면 같은 값밑에 있는 실행문을
실행하고 다 조건이 맡지 않을 경우 그냥 default 밑에 있는 실행문4를 실행하고
switch문을 빠져 나오죠...여기에는 break문이 쓰이는데...이것은 실행문을
실행하고 나서 switch문을 빠져 나오라는 제어문 입니다...아주 쉽죠....
그럼 간단한 예제를 하나 보고 넘어가도록 하죠...
|
■ switch-case문 예제...
class SwithTest1{
public static void main(String[] arg){
int money=Integer.parseInt(arg[0]);
switch(money){
case 500:
System.out.println("버스를 타시오");
break;
case 5000:
System.out.println("일반택시를 타시오");
break;
case 50000:
System.out.println("모범택시를 타시오");
break;
default:
System.out.println("걸어 가시오");
}
}
}
|