[Java] String, Character 메소드

19·2022년 11월 19일
0

Java

목록 보기
10/13

문자열 관련 알고리즘 문제를 풀며, String과 Character 메소드를 활용하는 일이 꽤 있었다.
잘 알고 정리해두어야 나중에 잊지 않고 떠올릴 수 있을 것 같다

내가 사용했던 메소드들만 우선 정리


String

split()

  • 매개변수로 넘어온 문자 기준으로 String을 String 배열로 변환하는 것'
String[] strs = string.split(" ");

indexOf()

  • String에서 매개변수로 넘어온 문자를 찾는 것
    인덱스 번호를 반환하며, 못찾으면 -1을 반환
int index = string.indexOf("a");	// 있으면 인덱스번호, 없으면 -1

substring()

  • String을 분할하는 것
string = string.substring(5);
---
string = string.substring(1,5);

replace()

  • 문장의 특정 문자를 원하는 부분으로 바꾸는 것
string = str.replace('#', '1').replace('*', '0')	// #은 1, *은 0으로 바꿔버림

replaceAll()

  • 문장의 특정 문자들을 원하는 문자로 바꾸는 메소드
string = str.replaceAll("[^A-Z]", "");	// 대문자 A-Z 이외의 문자들을 빈 문자열로 바꿔버림

repeat()

  • 특정 문자열을 반복하는 메소드
string = string.repeat(5);


Character

toCharArray()

  • String을 char 배열로 변환하는 것
    이 메소드를 활용해 자리변환등을 할 수 있었다.
char[] chars = string.toCharArray();

isUpperCase() / isLowerCase()

  • 해당 문자가 대문자/소문자인지를 확인하는 메소드

toUpperCase() / toLowerCase()

  • 해당 문자를 대문자/소문자로 변환하는 메소드

isAlphabetic()

  • 해당 문자가 알파벳인지 확인하는 메소드

isDigit()

  • 해당 문자가 숫자인지 확인하는 메소드


StringBuilder

String을 수정하는 건 계속 새로운 String 객체가 생성되는 것이므로 메모리부분에서 좋지 않다고 한다.
ex) string += "블라브라라" -> 이런 식으로 String이 계속 수정되는 것은 안좋음

따라서, StringBuilder를 사용한다.

StringBuilder sb = new StringBuilder();
sb.append("블라라브랄");
...

string = sb.toString();	// StringBuilder -> String

reverse()

  • 문자열을 뒤집는 것
string = sb.reverse().toString();
profile
하나씩 차근차근

0개의 댓글