[문자형 character]


  - char : 2바이트 메모리 할당
  - 유니코드(2byte 문자 처리) 방식 사용
  - char ch='A' (○)
  - char ch="A" (X)
  - char형은 내부적으로 아스키코드 정수값으로 저장.
  - char ch='' (X) 에러발생
  - char ch=' ' (○) 빈값을 주고자할 때, 반드시 공백값이라도 줘야 함.

 

 ※ 유니코드 : unicode 세계문자표준이며, 바이너리 코드(2진수코드)를 확립하고

                    세계 각국의 언어를 처리하고 표현하기 위한 것.

 

 ※ 아스키코드 : ASCII Code 128개 문자, 알파벳을 비롯해 숫자,

                       특수문자들을 7개의 0 또는 1의 조합으로 표현하는 코드체계.

 

 

[문자열형 String]
  String str="Welcome to JAVA";

 

* 문자열관련 메소드
   toLowerCase()
   toUpperCase()
   length()
   charAt()
   substring()

 

 

파일명 : TestString.java

 

public class TestString{
  public static void main(String[] args){
/*
  //문자형 character
  //기본자료형 boolean,int,long,double
  //char
  char ch='A';
  System.out.println(ch);
  //char ch2="A"; 에러
  ch='가';
  System.out.println(ch);
 

  char mess=' '; //빈값을 줄경우 반드시 공백문자 1칸이상을 줘야한다
  //char mess='';//에러
  //아스키코드값
  //숙제)키보드의 방향키의 아스키코드값 확인하기
  System.out.println((int)'A');
  System.out.println((char)65);
  //소문자 'a' 아스키코드값
  System.out.println((int)'a');
  System.out.println('A'-'a');//65-97
  System.out.println((char)('b'-32));//소문자b를 대문자 B로 출력
*/

/*
//문자열형 String
//참조자료형 (변수(객체)가 위치해 있는 메모리의 주소값을 활용)
   String str="Happy Birthday!!";
   System.out.println(str);
   System.out.println(str.toLowerCase()); //str값을 소문자로 치환
   System.out.println(str.toUpperCase()); //str값을 대문자로 치환

//문)str값의 글자갯수를 출력
   System.out.println(str.length());

 

//문자열에서 문자의 인덱스(순서)는 0부터 시작
   System.out.println(str.charAt(4)); //4번째 글자
   System.out.println(str.charAt(0)); //0번째
*/

 /*
   String word="Gone With The Wind";
    //문)맨마지막 글자 출력 17
   //글자의 갯수 length()
   //글자갯수에서 -1
   //글자순서를 파악 charAt()
      System.out.println(word.charAt(word.length()-1));

      //substring(begin,end) begin부터 end-1까지
      System.out.println(word.substring(2,7)); //2번째글자부터 7-1까지
     
*/

   String jumin="881225-123456";
   //문1) 태어난 연도 출력 1988
   System.out.println("19"+jumin.substring(0,2));

 

  //나이를 구하시오
    String year=jumin.substring(0,2);//"88"
    int age=2012-(1900+Integer.parseInt(year));
    // int age=2012-(1900+(int)year); 에러
    System.out.println(age);


   //문2) 성별코드문자만 자르시오

   System.out.println(jumin.substring(7,8));

  //null 문자(\0)가 들어갈 공간을 확보해야만 한다.


    String code=jumin.substring(7,8);  //"1"
    System.out.println(code);

 

  }
}

 

 

 

+ Recent posts