Language/Java

[Java] 자주 사용하는 스트링 메소드(String Method) 정리

byunghyun23 2020. 12. 7. 15:22

 자세한 내용은 아래 문서를 참조해주세요.

docs.oracle.com/javase/8/docs/api/java/lang/String.html

 

String (Java Platform SE 8 )

Compares two strings lexicographically. The comparison is based on the Unicode value of each character in the strings. The character sequence represented by this String object is compared lexicographically to the character sequence represented by the argum

docs.oracle.com

1. charAt(int index) / return char

  • 지정된 인덱스의 char값 반환
String str = "abcd";
str.charAt(1);		// "b"

2. compareTo(String anotherString) / return int

  • 두 문자열을 사전적으로 비교 후 int값 반환
  • str1과 str2의 같을 경우 : 0
  • str1이 str2보다 사전 순으로 앞인 경우 : 음수 (사전 순 차이만큼)
  • str1이 str2보다 사전 순으로 뒤인 경우 : 양수 (사전 순 차이만큼)      
String str1 = "abcd";
String str2 = "abcd";
		
str1.compareTo(str2);	// 0
String str1 = "abcd";
String str2 = "abef";
		
str1.compareTo(str2);	// -2
String str1 = "abhi";
String str2 = "abde";
		
str1.compareTo(str2);	// 4

3. concat(String str) / return String

  • 현재 스트링값에 파라미터 스트링 값을 연결하고 String 반환
  • str1의 값이 변하는 것이 아님
String str1 = "abcd";
String str2 = "efgh";
		
str1.concat(str2);	// "abcdefgh"

4. startsWith(String prefix) / return boolean

  • 현재 스트링값이 파라미터 스트링 값으로 시작하는지 여부 boolean 반환
String str1 = "abcd";
		
str1.startsWith("ab");	// true
str1.startsWith("abc");	// true
str1.startsWith("abd");	// false

 

5. endsWith(String suffix) / return boolean

  • 현재 스트링값이 파라미터 스트링 값으로 끝나는지 여부 boolean 반환
String str1 = "abcd";
		
str1.endsWith("bcd");	// true
str1.endsWith("cd");	// true
str1.endsWith("bd");	// false

 

6. contains(CharSequence s) / return boolean

  • 현재 스트링값에 파라미터 char 시퀀스가 포함되는지 여부 boolean 반환
String str1 = "abcd";
		
str1.contains("bc");	// true
str1.contains("ad");	// false

 

7. indexOf(String str) / return int

  • 현재 스트링값에서 파라미터 스트링 값이 시작하는 첫 번째 인덱스 값 int 반환
  • 파라미터 스트링 값이 존재하지 않을 경우 -1 반환
String str1 = "abcd";
		
str1.indexOf("bcd");		// 1
str1.indexOf("bc");		// 1
str1.indexOf("cd");		// 2
str1.indexOf("d");		// 3
str1.indexOf("e");		// -1

 

8. length() / return int

  • 스트링 길이 int 반환
String str1 = "abcd";
		
str1.length();		// 4

 

9. isEmpty() / return boolean

  • length()가 0일 경우 true 반환
String str1 = "abcd";
String str2 = "";
		
str1.isEmpty();		// false
str2.isEmpty();		// true

 

10. matches(String regex) / return boolean

  • 현재 스트링이 파라미터 정규식과 일치하는지 여부 boolean 반환
  • 정규식 패턴 참조
String str1 = "abcd";
String pattern1 = "abc*d";
String pattern2 = "ab.d";
		
str1.matches(pattern1);		// true
str1.matches(pattern2);		// true

 

11. replace(CharSequence target, String replacement) / return String

  • 현재 스트링에서 리터럴 char 시퀀스를 replacement로 변경 후 String 반환
  • str1의 값이 변하는 것이 아님
String str1 = "abcd";
		
str1.replace("bc", "ef");	// "aefd"

 

12. replaceAll(String regex, String replacement) / return String

  • 현재 스트링에서 정규식(regex)과 일치하는 첫 번째 하위 스트링의 값을 replacement로 변경 후 String 반환
  • str1의 값이 변하는 것이 아님
String str1 = "abcd";
String pattern1 = "a.c";
		
str1.replaceAll(pattern1, "f");		// "fd"

 

13. split(String regex) / return String[]

  • 현재 스트링에서 정규식(regex)과 일치하는 스트링을 기준으로 분할 후 String[] 반환
String str1 = "010-1111-2222";
		
String[] strArr = str1.split("-"); // strArr[0] = "010", strArr[1] = "1111", strArr[2] = "2222"

 

14. trim() / return String

  • 현재 스트링에서 공백을 제거한 스트링 값 String 반환
  • 스트링의 시작과 끝 공백만 제거, 스트링 사이에 있는 공백은 제거되지 않음
String str1 = " 010 1111 2222 ";
		
str1.trim();	// "010 1111 2222"

 

15. toCharArray() / return char[]

  • 현재 스트링을 char[]로 반환
String str1 = "abc";
		
char[] charArr = str1.toCharArray();	// charArr[0] = 'a',  charArr[1] = 'b',  charArr[2] = 'c'

 

 

'Language > Java' 카테고리의 다른 글

[Java] Map 모든 데이터 가져오기  (0) 2022.01.21
[Java] 자바 정규식 예제  (0) 2020.12.07
[Java] 프로그램 실행 과정  (0) 2020.12.07