JAVA

String 클래스 메소드

경상도상남자 2025. 6. 19. 16:13

 

String 클래스 메소드 정리

리턴타입 메소드 이름(매개 변수) 설명
int length() 문자열 길이 반환
char charAt(int index) 특정 인덱스 문자 반환
int indexOf(String) 특정 문자열이 처음 나오는 위치
int lastIndexOf(String) 특정 문자열이 마지막으로 나오는 위치
boolean contains(String) 특정 문자열 포함 여부
boolean equals(String) 문자열 내용 비교
boolean equalsIgnoreCase(String) 대소문자 무시하고 문자열 비교
boolean startsWith(String) 특정 문자열로 시작하는지 확인
boolean endsWith(String) 특정 문자열로 끝나는지 확인
String substring(int) 특정 인덱스부터 끝까지 문자열 자르기
String substring(int, int) 특정 범위 문자열 자르기
String replace(A, B) 문자열 A를 B로 교체
String toUpperCase() 모두 대문자로 변환
String toLowerCase() 모두 소문자로 변환
String trim() 앞뒤 공백 제거
String[] split(String regex) 특정 구분자로 문자열 나누기
boolean isEmpty() 문자열이 비어있는지 확인 (length() == 0)
boolean isBlank() 공백 문자열인지 확인 (Java 11 이상)
byte[] getBytes() 문자열을 바이트 배열로 변환
String valueOf(기본타입) 기본형을 문자열로 변환
String format() 포맷 문자열 생성

 

 

✅ 주요 메서드 예제 및 설명

🔹 length()

String str = "hello";
System.out.println(str.length()); // 출력: 5
 

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


🔹 charAt(int index)

String str = "hello"; 
System.out.println(str.charAt(1)); // 출력: 'e'

 

지정한 인덱스 위치의 문자를 반환합니다.


🔹 indexOf(String)

String str = "hello world";
System.out.println(str.indexOf("o")); // 출력: 4

 

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


🔹 lastIndexOf(String)

String str = "hello world";
System.out.println(str.lastIndexOf("o")); // 출력: 7

 

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


🔹 contains(String)

String str = "hello world";
System.out.println(str.contains("world")); // 출력: true

 

지정한 문자열이 포함되어 있는지 확인합니다.


🔹 equals(String)

String a = "Java"; 
String b = "Java"; 
System.out.println(a.equals(b)); // true
 

문자열 내용을 비교합니다.

 


🔹 equalsIgnoreCase(String)

 
String a = "Java"; 
String b = "java"; 
System.out.println(a.equalsIgnoreCase(b)); // true

 

대소문자 무시하고 비교합니다.


🔹 startsWith(String)

 
String str = "hello world";
System.out.println(str.startsWith("hello")); // true

 

문자열이 특정 값으로 시작하는지 확인합니다.


🔹 endsWith(String)

String str = "hello world";
System.out.println(str.endsWith("world")); // true

 

문자열이 특정 값으로 끝나는지 확인합니다.


🔹 substring(int) / substring(int, int) 

 
String str = "hello world"; 
System.out.println(str.substring(6)); // "world" 
System.out.println(str.substring(0, 5)); // "hello"

 

문자열을 잘라 부분 문자열을 만듭니다.


🔹 replace(A, B)

String str = "apple"; 
System.out.println(str.replace("a", "A")); // "Apple"

 

문자 또는 문자열을 바꿉니다.


🔹 toUpperCase() / toLowerCase()

String str = "Java"; System.out.println(str.toUpperCase()); // "JAVA"
System.out.println(str.toLowerCase()); // "java"

 

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


🔹 trim()

String str = " hello "; 
System.out.println(str.trim()); // "hello"

 

양 끝의 공백을 제거합니다.


🔹 split(String regex)

String str = "a,b,c"; 
String[] arr = str.split(","); 
System.out.println(Arrays.toString(arr)); // [a, b, c]

 

지정한 구분자로 문자열을 나눕니다.


🔹 isEmpty() / isBlank()

String str1 = ""; 
String str2 = " "; 
System.out.println(str1.isEmpty()); // true 
System.out.println(str2.isBlank()); // true (Java 11 이상)
  • isEmpty()는 길이가 0인지 확인
  • isBlank()는 공백으로만 이루어졌는지 확인

🔹 getBytes()

String str = "hello"; 
byte[] bytes = str.getBytes(); 
System.out.println(Arrays.toString(bytes));

 

문자열을 바이트 배열로 변환 (인코딩 기반)


🔹 String.valueOf()

int num = 123; 
String str = String.valueOf(num); 
System.out.println(str); // "123"

 

기본형을 문자열로 바꿉니다.


🔹 String.format()

String name = "동현"; 
int age = 26; String result = String.format("이름: %s, 나이: %d", name, age); 
System.out.println(result); // "이름: 동현, 나이: 26"

 

서식 문자열을 만들어줍니다. printf랑 유사합니다.