String 클래스는 문자열로 처리할 수 있는 다양한 기능을 제공한다. 기능이 방대하므로 필요한 기능이 있으면 그때마다 검색하거나 API 문서를 찾아보도록 하자.
<문자열 확인 및 비교>
- isEmpty(): 문자열이 비어 있는지 확인한다. (길이가 0)
- isBlank(): 문자열이 비어 있는지 확인한다. (길이가 0이거나 공백(Whitespace)만 있는 경우), Java 11
- equals(Object anObject): 두 문자열이 동일한지 비교
- equalsIgnoreCase(String anotherString): 두 문자열을 대소문자 구분 없이 비교
- compareTo(String anotherString): 두 문자열을 사전 순으로 비교
- compareToIgnoreCase(String str): 두 문자열을 대소문자 구분 없이 사전적으로 비교
- contains(CharSequence s): 문자열이 특정 문자열을 포함하고 있는지 확인
※ CharSequence는 String, StringBuilder의 상위 타입
- startsWith(String prefix): 문자열이 특정 접두사로 시작하는지 확인
- endsWith(String suffix): 문자열이 특정 접미사로 끝나는지 확인
<문자열 정보 반환>
- length(): 문자열 길이를 반환
- charAt(int index): 특정 인덱스의 문자를 반환
- substring(int beginIndex) / substring(int beginIndex, int endIndex): 문자열의 부분 문자열을 반환
- indexOf(String str) / indexOf(String ch, int fromIndex): 특정 문자열이 시작되는 인덱스를 반환
- lastIndexOf(String ch): 문자열이 마지막으로 등장하는 첫 번째 인덱스를 반환
<문자열 대체 및 변환>
- replace(CharSequence target, CharSequence replacement): 특정 문자열을 새 문자열로 대체
- replaceAll(String regex, String replacement): 문자열에서 정규 표현식과 일치하는 부분을 새
문자열로 대체
- replaceFirst(String regex, String replacement): 문자열에서 정규 표현식과 일치하는 첫 번째
부분을 새 문자열로 대체
- toLowerCase(), toUpperCase(): 문자열을 소문자 또는 대문자로 변환
<문자열 분할 및 조합>
- concat(String str): 문자열을 합친다
※ concatenate: 사슬같이 잇다, 연쇄시키다
(사실 그냥 sout에서 +로 더해도 상관없기는 하다)
- trim(): 문자열 양 끝의 공백을 제거
- strip(): Whitespace와 유니코드 공백을 포함해서 제거, Java 11
- split(String regex): 문자열을 정규 표현식을 기준으로 분할
- join(CharSequence delimiter, CharSequence... elements): 주어진 구분자로 여러 문자열을 결합
<기타 유틸리티>
- valueOf(Object obj): 다양한 타입을 문자열로 변환
- toCharArray(): 문자열을 문자 배열로 변환
- format(String format, Object... args): 형식 문자열과 인자를 사용하여 새로운 문자열을 생성
- matches(String regex): 문자열이 주어진 정규 표현식과 일치하는지 확인
참고 및 출처: 김영한의 실전 자바 - 중급 1편
'Language > Java' 카테고리의 다른 글
[Java API] 래퍼 클래스(Wrapper Class) (0) | 2024.08.22 |
---|---|
[Java API] StringBuilder 클래스 (0) | 2024.08.22 |
[Java API] Object 클래스 주요 메서드: toString(), equals(), getClass(), hashCode(), notify(), notifyAll(), wait() (0) | 2024.08.20 |
[Java API] java.lang 패키지 주요 클래스와 인터페이스 정리 (0) | 2024.08.20 |
JAVA 16 - instanceof 신기능(Pattern Matching for instanceof) (0) | 2024.08.11 |