String
public final class String implements Serializable, Comparable {
private char[] value;
...
}
더하기 연산
특수문자
\n
(줄바꿈=개행), \t
(탭), \r
(캐리지 리턴),\b
(백스페이스)
\u
(유니코드)
\\
, \"
Static
static methods
String.valueOf(int | char | double | char[] |...) -> String
: 문자열 변환 반대는 XXXX.parseXXX(String)
String.join(String join, String[] strs) -> String
static fields
String.CASE_INSENSITIVE_ORDER : Comparator<String>
String 인스턴스 생성
리터럴
- 리터럴은 클래스 파일에 포함
- 클래스 파일이 클래스 로더에 의해 메모리에 올라갈때, 리터럴은 JVM의 상수 저장소에 저장
- 동일 문자열 존재하면 재사용(=하나의 인스턴스 공유)
생성자
new String(byte[])
new String(byte[], int offset, int length)
new String(char[])
new String(StringBuffer)
methods
배열을 리턴하는 메서드
str.getBytes(String encode) -> byte[]
str.split(String regex) -> String[]
str.split(",|-")
: , or -
str.toCharArray() -> char[]
boolean을 리턴하는 메서드
str.contains(String subString) -> boolean
str.startsWith(String prefix) -> boolean
str.endsWith(String suffix) -> boolean
str.equalsIgnoreCase(String str) -> boolean
: 대소문자 구분없이 비교
index를 리턴하는 메서드
str.indexOf(char c) -> int
str.indexOf(String subString) -> int
str.indexOf(String subString, int from) -> int
String을 리턴하는 메서드
- 원본 String은 변하지 않고 새로운 String 생성
str.replace(String from, String to) -> String
str.replaceAll(String regex, String str2) -> String
str.replaceFirst(String regex, String replacement) -> String
str.substring(int begin, int end) -> String
: 부분 문자열 생성
str.toLowerCase() -> String
str.toUpperCase() -> String
str.trim() -> String
str.concat(String) -> String
char 를 리턴하는 메서드
str.charAt(int index) -> char
문자열 분할
str.split(String regex) -> String[]
기타메서드
str.charAt(int idx) -> char
: 인덱스에 위치한 문자
str.toCharArray() -> char[]
str.getBytes(String encode) -> byte[]
str.length() -> int
: 문자열 길이