프로그래밍/Java

[자바 문법] String 클래스

코드몬스터 2023. 8. 4. 17:29
728x90

01. Contains

  • 내부적으로 indexOf 메서드를 사용해서 구현하고 있음.
public boolean contains(CharSequence sequence)
{
   return indexOf(sequence.toString()) > -1;
}

 

예시) 프로그래머스 입문 - 문자열 안에 문자열

 

class Solution {
    public int solution(String str1, String str2) {
        int answer = 0;
        
        if (str1.contains(str2)) answer = 1;
        else answer =2;
        
        return answer;
    }
}

 

02. indexOf / lastIndexOf

 

함수 명은 같지만 매개변수의 타입과 개수를 다르게 해서 작성(오버로딩)

class Solution {
    public int solution(String str1, String str2) {
        int answer = 0;
        
        if (str1.indexOf(str2) > -1) answer = 1;
        else answer =2;
        
        return answer;
    }
}

 

03. valueOf / toString

  • 문자열 형 변환 메서드
  • valueOf와 toString의 차이점은 Null 처리
    • valueOf는 null을 "null" 로 return
    • toString은 NullPointException 에러가 발생한다.

 

04. charAt  / substring

  • 문자열에서 ⭐특정 단어를 추출(뽑아서)할 수 있다.
  • charAt은 return 타입이 char  / substring은 return 타입이 String 이다.
  • substring은 범위를 지정하여 추출할 수 있다.

 

05. toCharArray / split

  • toCharArray는 문자열을 char 배열로 return 해준다.
  • split은 특정 매개변수로 문자열을 분리할 수 있는데 split("")과 같이 사용하면 문자열 배열로 return할 수 있다.

split 매개변수는 정규식으로 작성된다.

 

public class Main  {
    public static void main(String args[]) {
        String testString = "abcdefghu";
    
        String[] testArray = testString.split("");
        
        // output: [a, b, c, d, e, f, g, h, u]
        System.out.println(Arrays.toString(testArray));
        
        char[] testCharArray = testString.toCharArray();
        
        // output: [a, b, c, d, e, f, g, h, u]
        System.out.println(Arrays.toString(testCharArray));

    }
}

 

05. toLowerCase / toUpperCase

  • toLowerCase는 소문자로 변형
  • toUpperCase는 대문자로 변형