반응형
String
자바가 제공하는 클래스 중 문자열을 저장하는 클래스
문자열의 표현과 객체 생성
방법 1
String 참조_변수명 = new String("문자열");
방법2
String 참조_변수명 = "문자열";
String str = new String("hello");
String str2 = "hi";
String 클래스의 특징
객체 안의 값을 변경하면 새로운 객체를 생성
String 객체는 내부에 포함된 문자열을 변경할 수 없다.
리터럴을 바로 입력한 데이터는 문자열이 같을 때 하나의 객체를 공유
문자열 리터럴만 입력하여 String 객체를 생성하면 하나의 문자열을 여러 객체들이 공유할 수 있다.
new를 사용하여 String 객체를 생성하면 동일한 문자열 객체가 있든 없든, 무조건 새롭게 객체를 생성한다.
문자열 리터럴로 생성할 때에는 힙 메모리에 리터럴로 생성된 동일 문자열을 포함하고 있는 객체가 있으면 그 객체를 공유한다.
String str1 = new String("hi");
String str2 = "hi";
String str3 = "hi";
String str4 = new String("hi");
//str2와 str3은 객체를 공유한다
//str1, str2(str3), str4는 객체를 공유하지 않는다
String 객체의 '+' 연산
String 객체에 '+' 연산을 사용하면 더하기의 의미가 아니라 연결하기의 의미가 된다
이전 업로드 글 참고
https://spongerice.tistory.com/126
String 클래스의 주요 메서드
구분 | 리턴 타입 | 메서드 | 설명 |
문자열 길이 | int | length | 문자열의 길이 |
문자열 검색 | char | charAt(int index) | 인덱스 위치에서의 문자 |
int | indexOf(int ch) | 문자열에 포함된 문자, 문자열의 위치를 앞에서부터 검생하여 일치하는 인덱스의 값, fromIndex는 검색 시작 위치 |
|
indexOf(int ch, int fromIndex) | |||
indexOf(String str) | |||
indexOf(String str, int fromIndex) | |||
int | lastIndex(int ch) | 문자열에 포함된 문자, 문자열의 위치를 뒤에서붕터 검색하여 일치하는 인덱스 값 | |
lastIndex(int ch, int formIndex) | |||
lastIndex(String str) | |||
lastIndex(String str, int fromIndex) | |||
문자열 변환 및 검색 | float | String.valueOf(boolean b) | 값을 문자열로 변환하기 위한 정적 메서드 |
String.valueOf(char c) | |||
String.valueOf(int i) | |||
String.valueOf(long i) | |||
String.valueOf(float f) | |||
String.valueOf(double d) | |||
double | concat(String str) | 문자열 연결 | |
문자열 배열 변환 | byte[] | getBytes() | 문자열을 byte[]로 변환 |
getBytes(Charset charset) | |||
char[] | toCharArray() | 문자열을 char[]로 변환 | |
문자열 수정 | String | toLowerCase() | 모두 소문자로 변환 |
toUpperCase() | 모두 대문자로 변환 | ||
replace(char oldChar, char newChar) | oldChar 문자열을 newChar 문자열로 대체한 문자열 생성 | ||
substring (int beginIndex) | beginIndex 부터 끝까지의 문자열 생성 | ||
substring (int beginIndex, int endIndex) | beginIndex 부터 endIndex -1 위치까지의 문자열 생성 |
반응형
'Language > [Java] 자바 완전 정복' 카테고리의 다른 글
3주차_07. 클래스 내부 구성 요소 (0) | 2022.02.03 |
---|---|
2주차_06. 클래스와 객체 (0) | 2022.01.27 |
2주차_05. 참조 자료형 1 (0) | 2022.01.27 |
2주차_04. 제어문과 제어 키워드 (0) | 2022.01.27 |
1주차_03. 연산자 (0) | 2022.01.20 |