Cute Running Puppy

Language/[Java] 자바 완전 정복

2주차_05. 참조 자료형 2

R.silver 2022. 1. 27. 19:24
반응형

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 

 

1주차_02. 자료형

변수 선언 변수에 저장할 데이터의 타입과 이름을 결정하는 것 자료형 변수이름; //사용 예시 int age; float avr; int a, b, c; //여러개를 한번에 선언 가능 변수 이름 작성 규칙 첫 글자는 문자이거나, $

spongerice.tistory.com

 

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 위치까지의 문자열 생성

 

 

반응형