[Java] 프로그래머스 문제 풀이에 유용한 String 메서드

2024. 10. 4. 19:35Java

프로그래머스 기초 문제들을 풀다가 막혀서 풀이를 보면

아차 싶거나, 새로 알게되는 유용한 String 메서드들이 꽤나 많다.

 

이걸 진작에 정리하고 넘어갔다면 풀이를 보지 않고 풀었을 문제들이 수두룩 했을 것이다...

 

그래서 오늘은 유용한 String 클래스 메서드들을 정리해보았다.

 


chat chatAt(int index)

지정된 위치(index)에 있는 문자열을 반환한다.

 

int compareTo(String str)

문자열(str)과 사전순서대로 비교한다.

같으면 0, 이전이면 음수, 이후면 양수를 반환한다.

 

String concat(String str)

문자열(str)을 뒤에 덧붙인다.

String s = "Hello";
String str = s.concat(" world");
// 결과 : str = "Hello world"

 

boolean contains(CharSequence s)

지정된 문자열(s)이 포함 되었는지 검사한다.

 

boolean endWith(String suffix)

지정된 문자열(suffix)로 끝나는지 검사한다.

 

boolean equalsIgnoreCase(String str)

문자열 String인스턴스의 문자열을 대소문자 구분없이 비교한다.

 

int indexOf(int ch)

주어진 문자(ch)가 문자열에 존재하는지 확인하여 위치(index)를 알려준다.

못 찾으면 -1을 반환한다.

 

int indexOf(int ch, int pos)

주어진 문자(ch)가 문자열에 존재하는지 지정한 위치(pos)로 부터 확인하여 위치(index)를 반환하고,

찾지 못하면 -1을 반환한다.

 

int indexOf(String str)

주어진 문자열이 존재하는지 확인하여 그 위치를 반환한다. 없으면 -1을 반환한다.

 

int lastIndexOf(int ch)

지정된 문자 또는 문자코드를 문자열의 오른쪽 끝에서 부터 찾아 위치(index)를 알려준다.

못 찾으면 -1을 반환한다.

 

String[] split(String regex)

문자열을 지정된 분리자로 나누어 문자열 배열에 담아 반환한다.

 

String[] split(String regex, int limit)

문자열을 지정한 분리자로 나누어 문자열 배열에 담아 반환한다.

단, 문자열 전체를 지정된 수로 자른다.

String animals = "dog,cat,bear";

String[] arr = animals.split(",",2);
// ','로 구분하여 문자열을 나눈다. 배열의 길이는 2!
// 결과 : arr[0] = "dog" , arr[1] = "cat,bear"

 

boolean startWith(String prefix)

주어진 문자열(prefix)로 시작하는지 검사한다.

 

String substring(int begin), subString(int begin, int end)

주어진 시작위치부터 끝위치 범위에 포함된 문자열을 얻는다.
시작위치의 문자는 범위에 포함되지만 끝 위치의 문자는 포함하지 않는다.
(끝 위치를 넣지 않는 경우 시작위치부터 끝까지 문자열을 잘라 반환한다.

 

String toLowerCase()

String 인스턴스에 저장된 모든 문자열을 소문자로 변환하여 반환한다.

 

String toUpperCase

String 인스턴스에 저장된 모든 문자열을 대문자로 변환하여 반환한다.

 

String trim()

문자열의 왼쪽 끝과 오른 쪽 끝에 있는 공백을 없애 반환한다.
이 때 문자열의 중간에 있는 공백은 제거되지 않는다.

 

join()과 StringJoiner

join()은 여러 문자열 사이에 구분자를 넣어서 결합한다.
split과 반대 개념이다.

String[] arr = {"dog", "cat", "bear"};


String str = String.join("-", arr);
System.out.println(str);
//  결과 : "dog-cat-bear"


StringJoiner sj = new StringJoiner(",","[","]");
for(String s : arr) {
	sj.add(s)
}
System.out.println(sj.toString());
//  결과 : [dog,cat,bear]

 


이제라도 정리하고 가니까 앞으로의 문제들은 그나마 좀 수월하게 풀지 않을까 싶다.

백준이나 프로그래머스를 시작하는 사람들은 한 번씩은 유용한 메서드 몇 개만 정리하고 넘어가는게 좋을 듯.

'Java' 카테고리의 다른 글

[Java] DAO와 DTO (2)  (0) 2024.10.04
[Java] DAO와 DTO (1)  (3) 2024.10.04
[Java] Exception  (0) 2024.10.04
[Java] function 함수  (0) 2024.10.04
[Java] 이중 for문 (별찍기)  (0) 2024.10.04