[Android/Java] String 클래스의 유용한 메소드(함수)들

프로그래밍/Android (Java)|2015. 1. 27. 11:00
반응형

String클래스에는 다양한 메소드들이 존재하지만 그 중에 유용하게 많이 사용되는 것들을 모아보았다. 


1. 문자열 자르기(추출하기) - substring


String substring(int start) : start부터 끝까지 

String substring(int start, int end) : start부터 end까지


String string = "abcdefgh";

String sub1 = string.substring(5);

String sub2 = string.substring(1,4);


결과는 !!

sub1 = "efgh"

sub2 = "bcd"


substring(int start , int end)에서 중요한 점은 매개변수로 사용되는 문자열에서 각 문자의 위치를 뜻하는 index가 0부터 시작한다는 것과 start부터 end의 범위 중 end위치에 있는 문자는 결과에 포함되지 않는다는 것이다. 따라서 예제의 string.substring(1, 4)에서는 1, 2, 3위치인 b, c, d가 추출된다.



2. 문자열 나누기 - split


String[] split(String divider)

문자열을 지정된 분리자(divider)로 나누어 문자열 배열에 담아 반환 한다.


String numbers = "123/45678/90";

String[] arr = animals.split("/");


결과는 !!

arr[0] = "123"

arr[1] = "45678"

arr[2] = "90"


 

3. 문자열에 포함된 문자 검사 - contains


boolean contains(charSequence s)

지정된 문자열(s)이 포함되었는지 검사 한다.


String string = "abcdefgh";

boolean b = string.contains("efg");


결과는 !!

b = true



4. 문자열 시작 또는 끝 부분 검사 - startWith, endsWith


boolean startWith(String s) : 지정된 문자열(s)로 시작하는지 검사 한다.

boolean endsWith(String s) : 지정된 문자열(s)로 끝나는지 검사 한다.


String string1 = "http://www.google.com";

boolean b1 = string.endsWith("http");

String string2 = "Hello programming";

boolean b2 = string.endsWith("ing");


결과는 !!

b1 = true

b2 = true  



5. 문자열 일치 여부 검사 - equals


boolean equals(Object obj)

매개변수로 받은 문자열(obj)과 String인스턴스의 문자열을 비교해서 똑같은가를 판단한다. 똑같다면 true를 반환하고, obj가 String이 아니거나 문자열이 다르면 false를 반환한다. String 클래스는 equals 메소드를 오버라이드 해서 사용한다.


String string = "Android";

boolean b1 = s.equals("Android");

boolean b2 = s.equals("android");


결과는 !!

b1 = true

b2 = false



6.문자열 바꾸기(치환) - replace


String replace(CharSequence old, CharSequence new)

문자열 중의 문자열(old)을 새로운 문자열(new)로 모두 바꾼 문자열을 반환 한다.


String string = "abcdefgh";

String string2 = s.replace("cd","ZZ"));


결과는 !!

string2 = "abZZefgh"


바꿀 문자열이 많은 경우에는 replaceAll(Charsequence old, CharSequence new)를 사용한다.



7. 문자열의 문자열 길이 구하기 - length


int length()

문자열의 길이를 반환한다.


String string1 = "android";

String string2 = "초보코딩왕";

int length1 = string1.length();

int length2 = string2.length();


결과는 !!

length1 = 7;

length2 = 5;




8. 문자열의 대문자를 소문자로 바꾸기 - toLowerCase


String toLoweCase()

String 인스턴스에 저장되어있는 모든 문자열을 소문자로 변환하여 반환 한다.


String string = "Hello World Java Programming";

String lower = string.toLowerCase();


결과는 !!

lower = "hello world java programming"



9. 소문자를 대문자로 바꾸기 - toUpperCase


String toUpperCase()

String 인스턴스에 저장되어있는 모든 문자열을 대문자로 변환하여 반환 한다. 


String string = "Hello World Java Programming";

String upper = string.toUpperCase();


결과는 !!

upper = "HELLO WORLD JAVA PROGRAMMING"



10. 문자열 좌우 공백 없애기 - trim


String trim()

문자열의 왼쪽 끝과 오른쪽 끝에 있는 공백을 없앤다. 문자열 중간에 있는 공백은 제거되지 않는다.


String string = "     Hello World   ";

String trim = string.trim();


결과는 !!

trim = "Hello World"



11. 다른 자료형의 변수를 문자열로 변환하기 - valueOf


String valueOf(boolean b)

String valueOf(char c) 

String valueOf(int i) 

String valueOf(long l) 

String valueOf(float  f) 

String valueOf(double d) 

String valueOf(Object o) 

지정된 값을 문자열로 변환하여 반환 한다.

참조변수의 경우, toString()을 호출한 결과를 반환 한다.


String b = String.valueOf(true);   ->   boolean 형

String c = String.valueOf('a');    ->   char 형

String i = String.valueOf(100);    ->   int 형

String l = String.valueOf(100L);    ->   long 형

String f = String.valueOf(10f);    ->   float 형

String d = String.valueOf(10.0);   ->   double 


java.util.Date dd = new java.util.Date(); 

String date = String.valueOf(dd);   ->   date 형


결과는 !!

b = "true"

c = "a"

i = "100"

l = "100"

f = "10.0"

d = "10.0"

date = "Sub Oct 27:20:21:21 KST 2013"


[출처] 초보코딩왕의 Power Dev. (ccdev.tistory.com/11)

반응형

댓글()