티스토리 뷰

package bitcamp.java142.ch2;

import java.util.Scanner;

public class SwitchTest_HW2 {

   public void yearGen(int gender, int yearNum){ //
      System.out.println("---SwichTest3.yearGen(int gender, int yearNum)시작---");
   int gNum = gender; // gender를 활용하기 위해서 매개변수를 지역변수로 치환
   int yNum = yearNum;// yearNum를 활용하기 위해서 매개변수를 지역변수로 치환
   
   switch(gNum){
   
   case '1' : case '3':
      switch(yNum) {
      case '1' :
         System.out.println("당신은 2000년 이전에 출생한 남자입니다.");
         break;      
      case '2' :
         System.out.println("당신은 2000년 이후에 출생한 남자입니다.");
      }
      break;
   case '2' : case '4':
      switch(yNum) { 
      case '1': 
         System.out.println("당신은 2000년 이전에 출생한 여자입니다. ");
         break;
      case '2' :
         System.out.println("당신은 2000년 이후에 출생한 여자입니다. ");
      }
      break;   
      }// end of switch
   System.out.println("---- SwichTest3.yearGen().switch 종료 ----");
   }// end of yearGen


   public static void main(String[] args) { 
      System.out.println("----------SwichTest3.main()시작----------"); 
      System.out.println("주민등록번호 입력 ㄱㄱ");
      Scanner sc = new Scanner(System.in); // 외부정보를 받기위해서 스캐너 클래스 사용함
      String regNum = sc.nextLine(); // 외부인수를 내부에서 활용하기 위해 nextLine 함수를 이용해서 String으로 받는다
      char yearNum = regNum.charAt(0); // 참조변수 regNum의 첫번째 글자를 int형 년도 인수로 설정함
      char gender = regNum.charAt(7); // 참조변수 regNum의 8번째 글자를 int형 성별 인수로 설정함
            
      boolean b1 = 8 == regNum.length(); //스트링 길이가 총 8글자인지 확인
      boolean b2 = 4 >= regNum.charAt(7);; //성별인수 확인
      System.out.println("----------regNum 매개변수 형식 확인----------"); 
      System.out.println("regNum.charAt(7) >> " + regNum.charAt(7));
      System.out.println("b1 > :" +b1 + " b2 > : "+b2);
      
      if(b1 && b2){ // 인수를 형식에 맞게 쓴 경우 실행되는 if문 작성
         System.out.println("----------SwichTest.main.if 진입----------"); 
         SwitchTest_HW2 st3 = new SwitchTest_HW2(); // SwitchTest3 class를 참조변수로 치환함
         st3.yearGen(gender, yearNum); // 이를 이용해 yearGen함수를 메모리에 올림, 이때  ()가 매개변수
           
      }else{
         System.out.println("----------SwichTest.main.else 진입----------");
         System.out.println("적희요...제대로...입력하시라구여...");
         System.out.println("----------SwichTest.main.else 종료----------"); 

         
      }//end of if문
      System.out.println("----------SwichTest.main() 종료----------"); 


   }//end of main

}//end of class

 

package bitcamp.java142.ch2;

import java.util.Scanner;

public class SwitchTest_HW2_re {

//상수설정해서 받아오기
public static final String GENDER_M_1 = "당신은 2000년 이전에 출생한 남자입니다.";
public static final String GENDER_M_3 = "당신은 2000년 이후에 출생한 남자입니다.";
public static final String GENDER_W_2 = "당신은 2000년 이전에 출생한 여자입니다.";
public static final String GENDER_W_4 = "당신은 2000년 이후에 출생한 여자입니다.";
// 문자상수로만들어서 가장 상단에 올려서 사용하기 >> 공통으로 쓸 수 있는 문자열은 아예 실행할때 올려놓고 재사용, 일일이 올리는게 아님!
// 참조변수로 올리는건 계속 오르내리는게 반복하기 때문에 static이 붙은 메모리로 처음부터 올려놓고 사용해서 필요시마다 사용함


public static void main(String[] args) { 


      System.out.println("주민등록번호 입력하시오 >>> : 000000-0");
      Scanner sc = new Scanner(System.in); // 외부정보를 받기위해서 스캐너 클래스 사용함
      String regNum = sc.nextLine(); // 외부인수를 내부에서 활용하기 위해 nextLine 함수를 이용해서 String으로 받는다

      int regNumLen = regNum.length(); 
      if (regNumLen == 8){
       System.out.println("regNumLen >> :  " + regNumLen);
       char gender = regNum.charAt(7);
       System.out.println( "gender >> : " + gender);
       }
    


}//end of main

}//end of class

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함