728x90
String
- API에서 제공하는 문자열 처리 클래스
- 객체 자료형이지만 기본 자료형처럼 String a = "a"; 와 같은 선언이 가능하다.
- String 객체는 immutable 해서 한 번 선언된 String은 바뀌지 않는다. 때문에 += 과 같이 변경하는 작업 시엔 메모리를 계속해서 사용하게 된다. (때문에 대신 StringBuilder, StringBuffer를 사용함)
- 메모리 상에는 char[] 형으로 구현됨
특징
- 같은 내용의 문자열은 메모리 상에서 한 번만 선언된다.
- new 키워드를 사용해서 선언할 시 메모리에 새로운 공간을 만들어 내게 되므로 다른 곳에 선언됨.
import java.util.*;
public class Main {
public static void main(String[] args) {
String a1 = "a";
String a2 = "a";
System.out.println(a1 == a2);
//결과 : true
a1 = new String("a");
a2 = new String("a");
System.out.println(a1 == a2);
//결과 : false
}
}
String 클래스 주요 메서드
접근제어자와 반환형 | 메서드 | 설명 |
char | charAt(int index) | 특정 위치에 있는 문자를 반환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | concat(String str) | 다른 String을 이어 붙인다. |
접근제어자와 반환형 | 메서드 | 설명 |
boolean | contains(CharSquence s) | 특정 문자열을 포함하고 있는지 확인 |
접근제어자와 반환형 | 메서드 | 설명 |
boolean | equals(Object o) | 다른 문자열과 내용을 비교해서 같은지 확인해준다. |
접근제어자와 반환형 | 메서드 | 설명 |
int | indexOf(String str) | 특정 문자열이 어디에 있는지 위치를 반환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
boolean | isEmpty() | 만약 문자열의 길이가 0이라면 true를 반환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
int | length() | 문자열의 길이를 반환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | replaceAll(String regex, String replacement) | 특정 부분 문자열을 다른 문자열로 교체시킨다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | subString(int beginIndex, int endIndex) | beginIndex ~endIndex - 1까지의 부분 문자열을 반환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | toLowerCase() | 문자열을 소문자로 변환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | toUpperCase() | 문자열을 대문자로 변환한다. |
접근제어자와 반환형 | 메서드 | 설명 |
String | trim() | 문자열 양쪽 끝의 공백을 제거한다. |
728x90
'Java' 카테고리의 다른 글
[자바] Generics 제네릭 (0) | 2020.09.03 |
---|---|
[자바] ArrayList 깊은 복사 vs 얕은 복사 (2) | 2020.09.01 |
[자바] Comparable, Comparator (0) | 2020.09.01 |
[자바] ArrayList ↔ Array 간 변환 (0) | 2020.08.24 |
[자바] BufferedReader의 EOF 처리 & 여러 줄 입력 처리 (0) | 2020.08.24 |
댓글