JAVA 2011. 5. 25. 21:19
기계보다 컴퓨터가 좋은 이유중에 하나는 바로 조건에 따라 다른일을 할 수 있다는 것이다. 

이러한 조건에 따라 주어진 일을 하는 명령문을 조건문(conditional statement)라고 하며

자바에서는 키워드인 if 를 이용하여 조건문을 만들수 있다.

public class iftest {
public static void main(String args[]){
int num;
num = 10 + 20;
if (num >10)
System.out.println("계산 결과가 10보다 큽니다");
}
}

위를 보면 num에 30을 대입하고 바로 결과값을 찍지 않고 if (num >10)를 써주었다. 

의미는 'num이 0보다 크다면 아래를 수행하라' 이다. 조건에 맞지않으면 그냥 빠져나온다. 

추가로 명령문 안에 포함된  System.out.println("계산 결과가 10보다 큽니다"); 이라는 

명령문은 부명령문(substatement) 라고 부른다.


주어진 처리를 반복해서 열번을 해야한다고 조건문을 열개를 주는 것은 비효율적이기 때문에

이때는 주어진 일을 반복하는 반복문(iterative statement)을 써야 한다. 


public class whiletest {
public static void main(String args[]){
int num;
num = 0;
while (num < 5){
System.out.println("Hello");
num = num + 1;
}
}
}

일단 num =0; 이기 때문에 num에는 0이들어가 있고 while문에 들어간다.  

while (num < 5) 조건을 보면 5 미만 까지의 의미고 그건 0,1,2,3,4 의 값만이 while문의 

조건을 충족 시키는것이 된다.  num 이 처음 들어가면 0 이기 때문에 조건을 만족하고 

while안으로 들어간다 그러면서  System.out.println("Hello"); 으로인해 Hello 가 한번 찍히고

num = num + 1; 을 지나기 때문에 num에 +1을 한 정수가 num 주머니로 들어간다, 

즉 0이었던 num주머니가 1로 바뀐다. while문은 조건을 만족한다면 계속 돌기 때문에

1,2,3,4 까지 돌며 Hello를 다섯번 찍어낸다 그러고 num이 5가 되면 조건에 만족하지 않기에

밖으로 빠져나온다. 맨날 헷갈리던게 num = num + 1 이었다. num이 0일때를 보면

0 = 0+1 과 같다. 그걸 해석하면 뒤에 0+1이 앞에 0에 대입이 되는건데 자꾸 수학의 이퀄이랑

착각을 해서 머리아팠던 기억이 난다.. 





출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 
posted by 젊은쎄오
: