[자바/Java] String 클래스 주요 메서드

dongbrown·2024년 7월 30일

Java

목록 보기
2/6

1. 문자열 정보 조회

length()

문자열의 길이를 반환합니다.

isEmpty()

문자열이 비어 있는지 확인합니다. (길이가 0인 경우)

isBlank()

문자열이 비어 있거나 공백(Whitespace)만 있는지 확인합니다. (Java 11 이상)

charAt(int index)

지정된 인덱스에 있는 문자를 반환합니다.

String str = "Hello, Java!";
System.out.println("문자열의 길이: " + str.length());
System.out.println("문자열이 비어 있는지: " + str.isEmpty());
System.out.println("문자열이 비어 있거나 공백인지: " + str.isBlank());
System.out.println("7번 인덱스의 문자: " + str.charAt(7));

2. 문자열 비교

equals(Object anObject)

두 문자열이 동일한지 비교합니다.

equalsIgnoreCase(String anotherString)

두 문자열을 대소문자 구분 없이 비교합니다.

compareTo(String anotherString)

두 문자열을 사전 순으로 비교합니다.

compareToIgnoreCase(String str)

두 문자열을 대소문자 구분 없이 사전적으로 비교합니다.

startsWith(String prefix)

문자열이 특정 접두사로 시작하는지 확인합니다.

endsWith(String suffix)

문자열이 특정 접미사로 끝나는지 확인합니다.

String str1 = "Hello, Java!";
String str2 = "hello, java!";
String str3 = "Hello, World!";

System.out.println("str1 equals str2: " + str1.equals(str2));
System.out.println("str1 equalsIgnoreCase str2: " + str1.equalsIgnoreCase(str2));
System.out.println("str1 compareTo str3: " + str1.compareTo(str3));
System.out.println("str1 starts with 'Hello': " + str1.startsWith("Hello"));
System.out.println("str1 ends with 'Java!': " + str1.endsWith("Java!"));

3. 문자열 검색

contains(CharSequence s)

문자열이 특정 문자열을 포함하고 있는지 확인합니다.

indexOf(String ch) / indexOf(String ch, int fromIndex)

문자열이 처음 등장하는 위치를 반환합니다.

lastIndexOf(String ch)

문자열이 마지막으로 등장하는 위치를 반환합니다.

String str = "Hello, Java! Welcome to Java world.";

System.out.println("문자열에 'Java'가 포함되어 있는지: " + str.contains("Java"));
System.out.println("'Java'의 첫 번째 인덱스: " + str.indexOf("Java"));
System.out.println("인덱스 10부터 'Java'의 인덱스: " + str.indexOf("Java", 10));
System.out.println("'Java'의 마지막 인덱스: " + str.lastIndexOf("Java"));

4. 문자열 조작 및 변환

substring(int beginIndex) / substring(int beginIndex, int endIndex)

문자열의 부분 문자열을 반환합니다.

concat(String str)

문자열의 끝에 다른 문자열을 붙입니다.

replace(CharSequence target, CharSequence replacement)

특정 문자열을 새 문자열로 대체합니다.

replaceAll(String regex, String replacement)

문자열에서 정규 표현식과 일치하는 부분을 새 문자열로 대체합니다.

replaceFirst(String regex, String replacement)

문자열에서 정규 표현식과 일치하는 첫 번째 부분을 새 문자열로 대체합니다.

toLowerCase() / toUpperCase()

문자열을 소문자나 대문자로 변환합니다.

trim()

문자열 양쪽 끝의 공백을 제거합니다. 단순 Whitespace만 제거할 수 있습니다.

strip()

Whitespace와 유니코드 공백을 포함해서 제거합니다. (Java 11 이상)

String str = "Hello, Java! Welcome to Java";
System.out.println("인덱스 7부터의 부분 문자열: " + str.substring(7));
System.out.println("문자열 결합: " + str.concat("!!!"));
System.out.println("'Java'를 'World'로 대체: " + str.replace("Java", "World"));
System.out.println("소문자로 변환: " + str.toLowerCase());
System.out.println("공백 제거: '" + "  Java  ".strip() + "'");

5. 문자열 분할 및 조합

split(String regex)

문자열을 정규 표현식을 기준으로 분할합니다.

join(CharSequence delimiter, CharSequence... elements)

주어진 구분자로 여러 문자열을 결합합니다.

String str = "Apple,Banana,Orange";
String[] fruits = str.split(",");
for (String fruit : fruits) {
    System.out.println(fruit);
}

String joinedStr = String.join("-", "A", "B", "C");
System.out.println("연결된 문자열: " + joinedStr);

6. 기타 유틸리티

valueOf(Object obj)

다양한 타입을 문자열로 변환합니다.

toCharArray()

문자열을 문자 배열로 변환합니다.

format(String format, Object... args)

형식 문자열과 인자를 사용하여 새로운 문자열을 생성합니다.

matches(String regex)

문자열이 주어진 정규 표현식과 일치하는지 확인합니다.

int num = 100;
String numString = String.valueOf(num);
System.out.println("숫자의 문자열 값: " + numString);

String str = "Hello, Java!";
char[] charArray = str.toCharArray();
System.out.println("문자열을 문자 배열로 변환: " + new String(charArray));

String formattedStr = String.format("숫자: %.2f", 10.1234);
System.out.println(formattedStr);

String regex = "Hello, (Java!|World!)";
System.out.println("'Hello, Java!'가 패턴과 일치하는가? " + "Hello, Java!".matches(regex));

0개의 댓글