본문 바로가기
안드로이드 자바

[JAVA][Android] TextUtils 클래스 사용해서 텍스트 문자열 처리하기

by teamnova 2024. 10. 17.
728x90

안녕하세요.

오늘은 TextUtils 에 대해서 알아보도록 하겠습니다.

 

TextUtils는 안드로이드 SDK에서 제공하는 유틸리티 클래스 중 하나로, 텍스트와 문자열 관련 작업을 간편하게 처리할 수 있도록 도와줍니다.

특히, null 체크 빈 문자열 처리에 자주 사용되며, 그 외에도 여러 유용한 메서드를 제공합니다.

이번 포스팅에서는 TextUtils의 주요 기능들을 살펴보고, 예시와 함께 설명하겠습니다.

 

 

1. isEmpty(CharSequence str)

이 메서드는 주어진 문자열이 null이거나 빈 문자열인지 확인합니다. 자주 쓰이는 null 체크 빈 문자열 체크를 한 번에 처리할 수 있어 매우 유용합니다.

if (TextUtils.isEmpty(textInputEditText.getText())) {
  // null이거나 빈 문자열이면 true 반환
}
 

2. join(CharSequence delimiter, Iterable tokens)

여러 문자열을 특정 구분자를 사용해 하나의 문자열로 결합할 때 사용됩니다. 예를 들어, 리스트나 배열의 항목을 하나의 문자열로 합칠 때 유용합니다.

List<String> words = Arrays.asList("안드로이드", "개발", "재미있어요");
String joinedString = TextUtils.join(" ", words); // "안드로이드 개발 재미있어요"

 

3. split(String text, String expression)

 

이 메서드는 특정 구분자를 사용해 문자열을 분리할 때 사용됩니다. 자바의 String.split()과 유사하지만 null 안전성을 제공합니다.

String text = "one,two,three";
String[] parts = TextUtils.split(text, ","); // ["one", "two", "three"]

 

4. equals(CharSequence a, CharSequence b)

 

두 문자열을 비교할 때 null 안전한 방식으로 비교할 수 있습니다. 문자열 중 하나가 null일 경우에도 NullPointerException을 방지할 수 있습니다.

if (TextUtils.equals(str1, str2)) {
  // 두 문자열이 같은지 비교
}

 

5. getTrimmedLength(CharSequence s)

 

이 메서드는 문자열의 앞뒤 공백을 제거한 후의 길이를 반환합니다. 공백을 제외한 문자열의 실제 길이를 알고 싶을 때 유용합니다.

String text = "   안드로이드   ";
int length = TextUtils.getTrimmedLength(text); // 공백을 제외한 길이 반환

 

6. concat(CharSequence... text)

 

여러 개의 문자열을 결합할 때 사용됩니다. + 연산자 대신 이 메서드를 사용하면 성능 향상을 기대할 수 있습니다.

String combined = TextUtils.concat("안드로이드", " ", "개발").toString();