JAVA

[JAVA]String 메서드

당고개 2023. 9. 21. 16:27

문자열 다루기

String 클래스에는 문자열을 가공하거나 판단할 수 있도록 도와주는 몇 가지 메서드들이 존재합니다. 모든 메서드들을 소개하지는 않고, 주로 사용되는 메서드들을 설명합니다. 외울 필요는 없습니다. 필요할 때 기억을 더듬어 찾아서 사용하면 됩니다.

1. public int length() - 문자열 길이 반환

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

String text = "카페라떼";

int length = text.length();
// 4

String text = "라떼";

int length = text.length();
// 2

2. public boolean contains(CharSequence s)  - 문자열 포함 여부 확인

해당 문자열이 매개변수에 전달되는 문자열을 포함하고 있는지 확인합니다. 포함하고 있다면 true, 포함하고 있지 않다면 false를 반환합니다.

String text = "안녕하세요. 오늘 좋은 날씨네요.";
boolean isContains = text.contains("오늘");
// true

// 반대는 다른 결과이다
boolean isContains = "오늘".contains(text);
// false

3. public boolean startsWith(String prefix) - 앞의 문자열 동일 여부 확인

해당 문자열이 매개변수에 전달되는 문자열과 앞의 부분이 동일한지 확인합니다
동일하다면 true, 동일하지 않다면 false를 반환합니다.

String text = "기도수첩으로 시작하는 하루";
boolean isCollect = text.startWith("기도");
// true

boolean isCollect = text.contains("노래");
// false

4. public String trim() - 앞 뒤 공백 제거

문자열의 앞뒤에 공백문자가 존재한다면, 공백 문자열을 제거한 문자열을 반환합니다.

현업에서 사용자가 작성한 내용에서 공백문자를 제거 하기 위해 자주 사용합니다.

*원본 훼손X

String text = "  오늘은 눈이 오는 날이네요     ";
String trimedText = text.trim();
// "오늘은 눈이 오는 날이네요"

5. public String replace(CharSequence target, CharSequence replacement) - 문자열 변경

target 매개변수로 전달된 문자열을 모두 찾아 replacement 매개변수에 전달 된 문자열로 모두 변경돤 문자열을 반환합니다. 특정한 문자를 찾아 새로운 문자로 치환해야 할 때 사용합니다.

*원본 훼손X

String text = "카페라떼, 녹차라떼, 코드라떼";
String replacedText = text.replace("라떼", "AA");
// "카페AA, 녹차AA, 코드AA"

6. public String substring(int beginIndex) - 문자열 자르기

문자열의 첫 번째 문자를 0번 index라고 한다면, 두 번째 문자를 1번 index라고 한다. (공백도 문자다)

문자열을 beginIndex 부터 문자열의 마지막 index까지의 문자열을 반환한다.

*원본 훼손X

String text = "123456789";

String subText = text.substring(2);
// "3456789"

String subText = text.substring(4);
// "56789"

String subText = text.substring(8);
// "9"

String subText = text.substring(9);
// ""

7. public String substring(int beginIndex, int endIndex) - 문자열 자르기

문자열의 첫 번째 문자를 0번 index라고 한다면, 두 번째 문자를 1번 index라고 한다. (공백도 문자다)

문자열을 beginIndex 부터 문자열의 endIndex 전 까지의 문자열을 반환한다

*원본 훼손X

String text = "123456789";

String subText = text.substring(2, 2);
// ""

String subText = text.substring(2, 3);
// "3"

String subText = text.substring(2, 4);
// "34"

String subText = text.substring(3, 6);
// "456"

8. public String toLowerCase() - 소문자로 변경

문자열을 소문자로 변경한 문자열을 반환한다.

*원본 훼손X

String text = "aBcDe";

String lowerCaseText = text.toLowerCase();
// "abcde"

9. public String toUpperCase() - 대문자로 변경

문자열을 대문자로 변경한 문자열을 반환한다.

*원본 훼손X

String text = "aBcDe";

String lowerCaseText = text.toUpperCase();
// "ABCDE"

10. public int indexOf(String str) - 특정 문자 찾기

문자열의 첫 번째 문자를 0번 index라고 한다면, 두 번째 문자를 1번 index라고 한다. (공백도 문자다)

  1. 첫 번째 index 부터 특정 문자열을 찾아 가장 먼저 찾은 문자열이 시작하는 index룰 반환한다.
  2. 찾지 못하면 -1을 반환한다.

찾기 위한 특정 문자열이 몇 번째 index 부터 시작하는지 찾을 때 사용한다. (가장 먼저 발견되는 문자를 기준으로 한다)

String text = "오늘도, 내일도, 모레도";

int index = text.indexOf("늘도");
// 1

int index = text.indexOf("도");
// 2

int index = text.indexOf("모레");
// 10

11. public char charAt(int index) - 특정 index의 문자 반환

문자열의 첫 번째 문자를 0번 index라고 한다면, 두 번째 문자를 1번 index라고 한다. (공백도 문자다)

문자열에서 index 번째 문자를 반환한다. (문자열이 아닙니다)

String text = "123456789";

char character = text.charAt(3);
// '4'

char character = text.charAt(1);
// '2'

char character = text.charAt(8);
// '9'

12. public int compareTo(String anotherString) - 문자열 비교

문자열을 비교할 때 사용하는 메서드입니다.

  1. 왼쪽의 문자열과 anotherString을 비교하여, 음수, 양수, 0중 하나를 반환한다.
  2. 왼쪽의 문자열이 anotherString 문자열보다 오름차순 기준으로 더 앞에 있으면 음수
  3. 왼쪽에 문자열이 anotherString 문자열보다 오름차순 기준으로 더 뒤에 있으면 양수
  4. 왼쪽의 문자열이 anotherString과 동일하면 0

오름차순 또는 내림차순으로 어떤 문자열이 더 앞이나 뒤에 있는지 확인할 때 사용하며 정렬을 위해 문자열으르 비교할 때도 사용된다.

int value = "abc".compareTo("jzis");
// -9 (의미 abc가 더 앞이다)

int value = "jzis".compareTo("abc");
// 9 (의미 abc가 더 앞이다)

int value = "aa".compareTo("aaa");
// -1 (의미 aa가 더 앞이다)

 

 

 

출처 : https://www.codelatte.io/courses/java_programming_basic/5VSKZC7E5HMV877S

'JAVA' 카테고리의 다른 글

[JAVA]상속과 생성자  (0) 2023.10.18
[JAVA]상속  (0) 2023.09.21
[JAVA]String 객체와 문자열 상수  (0) 2023.09.20
[JAVA]캡슐화  (0) 2023.09.12
[JAVA]객체의 합성  (0) 2023.09.12