ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java Basic]실행 흐름과 컨트롤(윤성우의 열혈 Java 프로그래밍)
    Java/Basic 2020. 12. 23. 05:34

    if 문과 if ~ else 문

    if문

    if (조건문){

             실행문

                 }

     

    if ~ else 문

    if(조건문){

             실행문

    }

    else{

              실행문

    }

    class IEBasic {
    	public static void main(String[] args){
    		int n1 = 5;
    		int n2 = 7;
    
    		//if문
    		if(n1 < n2){
    			System.out.println("n1 < n2 is true");
    		}
    		//if ~ else 문
    		if(n1 == n2){
    			System.out.println("n1 == n2 is true");
    		}
    		else{
    			System.out.println("n1 == n2 id false");
    		}
    	}	
    }

     

    else ~ if 문

    if(조건문){

           실행문

                }

    else if(조건문){

           실행문

               }

    else {

           실행문

           }

    class IEIE{
    	public static void main(String[] args){
    		int num = 120;
    		if(num < 0) 	//먼저 검사
    			System.out.println("0 미만");
    		else if(num < 100) //위 조건이 만족되지 않으면 여기서 다시 검사
    			System.out.println("0 이상 100 미만");
    		else 		//아무것도 만족되지 않으면 else에 속한 문장 실행
    			System.out.println("100 이상");
    	}
    }

    Switch 와 Break

    class SwitchBasic{
    	public static void main(String[] args){
    		int n = 3;
    
    		switch(n){
    		case 1:
    			System.out.println("Simple Java");
    		case 2:
    			System.out.println("Funny Java");
    		case 3:
    			System.out.println("Fantastic Java");
    		default:
    			System.out.println("The best programming language");
    		}
    
    		System.out.println("Do you like java?");
    	}
    }

    switch(n) 여기서 n 에 해당하는 숫자가 1,2,3,4 이런 형태로 나와서 case1 case2 이곳으로 가는것이다.

    다만 해당 숫자에 가서도 뒤에 나오는 것들이 다 출력되는 것을 볼 수 있다.

    그러지 않으려면 여기서 Break 문을 사용하면 된다.

    class SwitchBreak{
    	public static void main(String[] args){
    		int n = 3;
    		switch(n){
    		case 1:
    			System.out.println("Simple Java");
    			break;
    		case 2:
    			System.out.println("Funny Java");
    			break;
    		case 3:
    			System.out.println("Fantastic Java");
    			break;
    		default:
    			System.out.println("The best programming language");
    		}
    		System.out.println("Do you like java?");
    	}
    }

    Break문을 사용시 위처럼 해당 case 만 출력되고 밖으로 나가게 된다.

     

     

    class CondOp{
    	public static void main(String[] args){
    		int num1 = 50;
    		int num2 = 100;
    		int big;
    		int diff;
    
    		big = (num1 > num2) ? num1 : num2;
    		System.out.println("큰 수는 :" + big);
    
    		diff = (num1 > num2) ? (num1 - num2) : (num2 - num1);
    		System.out.println("절댓값 :" + diff);
    	}
    }

    참일경우 앞의 값, 거짓일 경우 뒤의 값이 출력된다.

    (조건문:참) ? num1 : num2;

    num1 이 출력

    (조건문:거짓) ? num1 : num2;

    num2 이 출력

     

    for문

    class ForBasic{
    	public static void main(String[] args){
    		for(int i=0; i<5;i++)
    			System.out.println("I love Java" + i);
    	}
    }

    결과

    While 문

    class WhileBasic{
    	public static void main(String[] args){
    		int num=0;
    
    		while(num<5){
    			System.out.println("I like Java" + num);
    			num++;
    		}
    	}
    }

    결과

    Do While 문

    while 문과는 달리 일단 DO! 한번은 실행해준 뒤 조건을 확인한다.!

    class DoWhileBasic{
    	public static void main(String[] args){
    		int num = 0;
    
    		do {
    			System.out.println("I like Java" + num);
    			num++;
    		}while(num<5);
    	}
    }

    결과

    Continue 사용

    class ContinueBasic{
    	public static void main(String[] args){
    		int num = 0;
    		int count = 0;
    
    		while((num++)<100){
    			if(((num%5)!=0)||((num%7)!=0))
    				continue;
    			count++;
    			System.out.println(num);	//5와 7의 배수인 경우에만 실행
    		}
    		System.out.println("count : " + count);
    	}
    }

    continue 를 사용한다면 밑으로 가지 않고 (해당 경우에선 count++ 로 가지않고) 위의 조건문으로 다시 간다

    이 경우엔 num 가 5와 7의 배수일 경우에만 count 가 된다.

     

    BreakPoint

    class BreakPoing{
    	public static void main(String[] args){
    		for(int i = 1;i<10;i++){
    			for(int j=1;j<10;j++){
    				if((i*j)==72){
    					System.out.println(i + "X" + j + "=" + i*j);
    					break;
    				}
    			}
    		}
    	}
    }

     

    위에서 처음에 나왔을 때 나오고 싶다면 밑에처럼 outer 를 잡아준다.

    class LabeledBreakPoing{
    	public static void main(String[] args){
    		outer: for(int i=1; i<10;i++){
    			for(int j=1;j<10;j++){
    				if((i*j)==72){
    					System.out.println(i+"X"+j+"="+i*j);
    					break outer;
    				}
    			}
    		}
    	}
    }

    댓글

Designed by Tistory.