ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 210415_1 (switch문, ||&&논리연산자) (복구성공)
    JAVA(Sol)(정리대기중..언젠가) 2021. 4. 15. 13:09

    분기문

    여러개 명령어 중에서 하나를 선택하여 실행할때 사용

     원칙 : 단순비교 // boolean값 사용못함, 조건식 사용못함 //

             int이하의 정수,문자,String만 사용가능하다(byte,short,int,char,String)

     

    switch ( 값) {

       case 비교값 1 : 실행문1;

              break;

       case 비교값 2 : 실행문2;

              break;

       case 비교값 3 : 실행문3;

              break;

              ....

       default : 기본실행문;

    }

       break <===자신을 감싸고 있는 { }블럭을 빠져 나간다.

     

    package chapter4;
    
    public class SwitchTest {
    
    	public static void main(String[] args) {
    		switch(100){
    			case 1 : System.out.println("1입니다.");
    			    break;
    			case 2 : System.out.println("2입니다.");
    				break;
    			case 3 : System.out.println("3입니다.");
    				break;
    			case 4 : System.out.println("4입니다.");
    				break;
    			default : System.out.println("1부터 4까지 입력해야 합니다.");
    		}
    	}
    
    }
    

     


    아스키코드

    7bit 컴퓨터 제어 문자 : 정수로 표현되는 문자

    (65~90==A~Z) (97~122==a~z)

    package chapter4;
    
    public class SwitchTest2 {
    
    	public static void main(String[] args) {
    		switch(65) {
    		case 'A': //65
    			System.out.println("입력된 코드는 A입니다.");
    			break;
    		case 'B': //66
    			System.out.println("입력된 코드는 B입니다.");
    			break;
    		case 'C': //65
    			System.out.println("입력된 코드는 C입니다.");
    			break;
    		case 'D': //65
    			System.out.println("입력된 코드는 D입니다.");
    			break;
    		default:
    			System.out.println("코드는 A부터 D까지 입력해야 합니다.");
    		}
    
    	}
    
    }
    

     

    궁금해서 해본것

    switch(100){
    	case 100 :System.out.println("100입니다");
    		break;
    	case 'd' : System.out.println("d 입니다") // 100은 아스키코드의 d에 해당
    		break;
    }

    이경우 case의 100과 'd'가 결국 같은값이라고 인식하고 에러가 나는것같다..

    정확한해답은 잘모르겠음..


    논리 연산자 || (or) , && (and)

     

    (조건식) || (조건식) 

    주의 && : 는 둘다 참일때 참이다. 앞쪽 조건식이 거짓이면 전체가 거짓이 되므로 뒤쪽 조건을 판별하지 않는다.

           ||  : 는 하나라도 참일때 참이다. 앞쪽 조건식 참이면 전체가 참이 되므로 뒤쪽 조건을 판별 하지 않는다.

     

    package chapter4;
    
    public class IfApp1 {
    
    	public static void main(String[] args) {
    		int k = 101;
    		
    		// 논리 연산자 or의 사용
    		if((k % 3 == 0)||(k % 5 == 0)) {
    			System.out.println("k의 값은 :" + k + ":3의배수이거나 5의 배수입니다.");
    		}else {
    			System.out.println("k의 값은 3의 배수이거나 5의 배수가 아닙니다.");
    		}
    
    	}
    
    }
    
    package chapter4;
    
    public class IfApp2 {
    
    	public static void main(String[] args) {
    		
    		int k = 90;
    		
    		//논리 and 연산자
    		if(k % 3 == 0 && k % 5 ==0) {
    			System.out.println("k의 값은:" + k + ": 3의 배수이면서 5의 배수입니다");
    		}else {
    			System.out.println("k의 값은 3의 배수이면서 5의 배수가 아닙니다." );
    		}
    
    	}
    
    }

     

Designed by Tistory.