본문 바로가기

패스트캠퍼스 환급 챌린지

[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {21} 회차 미션

1. String, Wrapper 클래스

String 클래스에 대해서

 

 

 

String 객체는 문자열을 사용하는데 가장 많이 사용하는 클래스이다. String 클래스에 대해 자세히 보도록 하자.

 

일단 String 객체가 하나 생성되면, 그 값은 길어지거나 줄어들 수 없으며, 그 문자들 중 어떤 것도 바뀔 수 없다.

 

그래서 String 객체는 변경불능(immutable)이라고 한다.

 

하지만 String 클래스의 함수(Method)를 사용하여 String 결과를 수정한 결과를 새로운 String 객체로 반환한다.

 

 

 

 

String 클래스의 자주 사용하는 함수(Method) 몇개를 살펴 보자.

 

 함수

반환형 

   설명 

 charAt(int index)

char 

 index로 지정된 첨자 위치에 있는 문자를 반환한다. 

compareTo(String str) 

int

 이 String이 String str보다 사전적 순서에서 앞서면 음수 값, 같으면 0, 뒤에 있으면 양의 정수 값을 반환한다. 

concat(String str) 

String 

 이 String과 str을 접합하여 구성되는 새로운 String을 반환한다.

equals(String str) 

boolean 

 이 String이 str과 같은 문자열이면(대소문자 구분) True, 그렇지 않으면 False 반환 

equalsIgnoreCase(String str) 

boolean

 이 String이 str과 같은 문자열이면(대소문자 미 구분) True, 그렇지 않으면 False 반환 

length() 

int 

 이 String의 문자 개수를 반환한다. 

replace(char oldChar, char newChar) 

String

 String에 나타나는 oldChar를 모두 new Char로 변경한다. 

substring(int offset, int endIndex) 

String 

 이 String의 offset 위치에서부터 endIndex-1까지에 걸친 문자열을 반환한다. 

toLowerCase() 

String 

 모든 대문자를 소문자로 변환한다. 

toUpperCase() 

String 

 모든 소문자를 대문자로 변환한다. 


출처: https://hyeonstorage.tistory.com/139

 

[JAVA] String 클래스에 대해서

String 클래스에 대해서 String 객체는 문자열을 사용하는데 가장 많이 사용하는 클래스이다. String 클래스에 대해 자세히 보도록 하자. 일단 String 객체가 하나 생성되면, 그 값은 길어지거나 줄어

hyeonstorage.tistory.com

 

자바(Java) String의 불변성(Immutable)

어떤 언어든 프로그래밍을 하다 보면 가장 많이 사용하고 꼭 있는 자료형이 문자열(String)일것입니다. 사람은 010100 과 같은 숫자보다 "book" 같은 문자에 더욱 익숙하기 때문입니다. 또한 문자열은 "1234"와 같이 숫자를 표현할 수 있고 "j20dsf908"와 같이 특정 인코딩된 데이터또한 표현이 가능하며, 모든것들을 표현할 수 있습니다. 예를들어 png같은 이미지 파일도 Base64 인코딩 하여 ASCII 형식의 문자열로 표현이 가능하지요.

 

이처럼 수많은 데이터를 문자열로 표현이 가능하기에 어떤 언어에서든 존재하고 가장 많이 사용하는 자료형이 문자열 자료형일 것입니다. 그래서인지 문자열(String) 타입은 참조타입임에도 불구하고 직접 new 연산자를 통해 객체를 생성하여 사용하는것이 아닌 문자열 리터럴 형태로 사용하는것이 허용됩니다.

String str = new String("Hello"); //이렇게도 사용 가능하지만

String str2 = "Hello"//이렇게 리터럴을 할당할수도 있다

cs

 

 

 

 

 

String의 불변성(immutable)

이미 아실분은 아시겠지만 String 즉 문자열 객체는 최초에 한 번 생성되면 절대로 그 값이 변하지 않습니다.

String str = "문자열";

str = "문자열2";

cs

 

 

위와 같이 String객체가 생성된 이후 "문자열"을 "문자열2"로 바꾼다고 해도 실제 내부적으로는 최초에 생성된 String 객체의 값이 변경된것이 아닌 새로운 String 객체가 생성되어 그 참조가 str 변수에 할당된 것입니다. 즉 이 상태에서는 최초에 생성된 "문자열" 과 "문자열2" 두개의 객체가 heap 에 생성되어 있는 상태입니다.



출처: https://dololak.tistory.com/699

 

[Java] String의 불변성(Immutable)과 그 이유

이전글 [Java] String의 더하기 연산으로 인한 문제점과 StringBuffer, StringBuilder의 특성과 차이점에 대해서 자바(Java) String의 불변성(Immutable) 어떤 언어든 프로그래밍을 하다 보면 가장 많이 사용하고..

dololak.tistory.com

 

 

 

 

올인원 패키지 : JAVA 웹 개발 마스터👉https://bit.ly/35aoeAW