Platonic의 조금은 재밌는 일상

API에서 알아두어야 할 클래스들 java.lang.String 본문

Programming 프로그래밍/Java

API에서 알아두어야 할 클래스들 java.lang.String

Platonic 2015. 10. 22. 09:34
java.lang.String
문자열작업을 쉽게 할 수 있도록 제공되는 API 클래스 
기존 언어들에서 char[ ]을 이용하는 방식 대신에 편리하게 사용할 수 있다는 장점
객체타입으로 사용한다는 특징 

문자열의 생성 두 가지
상수처럼 손 쉬운 방식 
String str = “AAA”; (이걸 많이 선호함)
new를 활용하는 객체 방식 (이방식은 메모리상에 객체를 또 만들기에 사용 잘 안함)
String str = new String(“AAA”);

두 방식의 메모리 활용 방식의 차이가 존재
‘==‘과 String의 equals( )
‘==‘ 연산자
메모리상에 같은 공간을 가리키는 지를 확인하는 연산자 

equals( )
두 개의 String 객체가 같은 문자열을 내용으로 가지는지를 확인하는 연산자 

Immutable

Java에서 문자열은 ‘불변(immutable)’하게 사용되는 메모리 

다른 String 객체라고 해도 문자열의 내용이 같다면 결국 같은 메모리를 가리키게 한다. 

만일 한 쪽의 문자열이 변경되면 새로운 객체가 만들어 지면서 다른 객체들에 영향이 없게 하는 구조


String에서 가장 많이 사용하는 메소드들

equals( ): 문자열의 내용물 비교 

charAt( ): 특정 위치의 char 찾기 

trim( ): 문자열 앞.뒤의 공백 없애기 

getBytes(): 문자열의 내용을 byte[ ]로 변환 

 

StringBuffer/StringBuilder
java.lang.String이 immutable이므로 가지는 문제를 해결하기 위해서 
객체 생성을 최소화 하는 클래스 빠른 속도 & 객체 생성 최소화 Enterprise급 시스템에서는 String사용을 
가급적 자제 주요 메소드 append( ) // 추가 reverse( ) // 반대로 출력




Comments