ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java 자바] 11. 기본 API 클래스 ④ String 클래스
    Programming/Java 2022. 9. 4. 21:08
    반응형

     11-5. String 클래스

    11-5-1. String 생성자

    // 배열 전체를 String 객체로 생성
    byte[] bytes = { 72, 101, 108, 108, 111, 32, 74, 97, 118, 97};
    String str = new String(byte[] bytes);
    System.out.println(str1); 	// Hello Java

    11-5-2. String 메소드

    1) 문자 추출 (charAt(int index))

    - 매개값으로 주어진 인덱스의 문자를 리턴

    String str = "Erin";
    char charValue = str.charAt(1);
    System.out.println(charValue);	// r

    2) 문자열 비교 (equals())

    - String의 경우, 동등비교시 참조값의 주소끼리 비교하므로 같은 값이더라도 false로 출력될 수 있음

    - String클래스는 Object클래스의 equals()를 오버라이딩하여, 문자열끼리 비교할 수 있도록 정의되어 있음

    String strVar1 = new String("Erin");
    String strVar2 = new String("Erin");
    
    System.out.println(strVar1 == strVar2)		// false
    System.out.println(strVar1.equals(strVar2))	// true

    3) 바이트 배열로 변환 (getBytes())

    - 네트워크 문자열을 전송하거나, 문자열을 암호화할 때 문자열을 바이트 배열로 변환하기 위해 사용

    String str = "Hello";
    
    byte[] bytes1 = str.getBytes();
    System.out.println("bytes1.length: " + bytes1.length);	// bytes1.length: 5
    String str1 = new String(bytes1);
    System.out.println("bytes1->String: " + str1);		// bytes1->String: Hello

    4) 문자열 찾기 (indexOf())

    - 매개값으로 주어진 문자열이 시작되는 인덱스를 리턴, 주어진 문자가 문자열에 없다면 -1 리턴

    - 매개값이 여러개 포함되어 있다면 가장 첫 번째 인덱스를 리턴

    String str = "Hello Java";
    System.out.println(str.indexOf('l'));	// 2

    5) 문자열 길이 (length())

    - 문자열의 길이 (문자의 수) 리턴, 공백 포함

    String str = "Hello Java";
    System.out.println(str.length());	// 10

    6) 문자열 대치 (replace())

    - 첫 번째 매개값인 문자열을 찾아 두 번째 매개값인 문자열로 대치한 새로운 문자열을 생성하고 리턴

    String str = "Hello Java";
    str = str.replace("Java", "Erin");
    System.out.println(str);	// Hello Erin

    7) 문자열 잘라내기 (substring())

    - 주어진 인덱스에서 문자열을 추출

    // substring(int beginIndex, int endIndex): 시작 인덱스부터 끝 인덱스 전까지 문자열 추출
    // substring(int beginIndex): 시작 인덱스를 기준으로 문자열의 끝까지 추출
    
    String str1 = "Hello Erin";
    String str2 = str1.substring(0, 6);
    System.out.println(str2);	// Hello

    8) 알파벳 대소문자 변경 (toLowerCase(), toUpperCase())

    - 문자열을 모두 소문자 혹은 모두 대문자로 바꾼 새로운 문자열을 생성한 후 리턴

    String str1 = "Hello Erin";
    String str2 = str1.toLowerCase();
    String str3 = str1.toUpperCase();
    		
    System.out.println(str2);	// hello erin
    System.out.println(str3);	// HELLO ERIN

    9) 문자열 앞뒤 공백 잘라내기 (trim())

    - 문자열의 앞 뒤 공백을 제거한 새로운 문자열을 생성하고 리턴

    String str1 = "     Hello Erin   ";
    String str2 = str1.trim();
    System.out.println(str2);	// Hello Erin

    10) 문자열 변환 (valueOf())

    - 기본 타입의 값을 문자열로 변환

    String str1 = String.valueOf(10);
    String str2 = String.valueOf(10.5);
    String str3 = String.valueOf(true);
    
    System.out.println(str1);
    System.out.println(str2);
    System.out.println(str3);
    반응형

    댓글

Designed by Tistory.