본문 바로가기

JAVA 공책/수업 메모

String 클래스

** 문자열 클래스

1. 종류

1) String : 변하지 않는 문자열 저장에 사용하는 클래스

2) StringBuilder(StringBuffer) : 변할 수 있는 문자열 저장에 사용하는 클래스

= String은 문자열 상수를 저장하기 때문에 정적 영역에 메모리를 할당합니다.

= StringBuilder는 동적 영역(heap)에 메모리를 할당합니다.

= String 클래스는 자기 자신을 변경할 수 없기 때문에 모든 메소드가 리턴을 합니다.

(저장을 할 수 없으니 내보내는 것)


2. String : 알고리즘 테스트에도 가장 많이 나오는 클래스

1) 객체 생성

= 문자열 상수를 바로 대입해서 생성 : String 변수 = "문자열";

= new String("문자열 상수")를 이용해서 생성

= new String(byte [] byte, String 인코딩방식)를 이용해서 생성 : 통신이나 파일의 내용을 읽을 때 사용


2) +연산자

= 문자열과 다른 데이터를 +로 연산하면 문자열 결합이 됩니다.

이 때, 문자열을 복사해서 작업합니다. : 1.6버전까지

1.7버전부터는 String 도 +연산을 하면 StringBuilder 처럼 이어붙이기를 합니다.


3) 주요 메소드

***char charAt(int index) : index 번째의 문자를 리턴

***int length() : 문자열의 길이를 리턴

= 이 두개의 메소드를 가지면 모든 작업을 수행할 수 있습니다.


String trim()

String toUpperCase()

String toLowerCase()

= 공백을 제거하고 모두 대문자나 소문자로 변경해주는 메소드

= 영문의 경우 특별한 경우가 아니면 대소문자를 구분하지 않으므로 작업을 할 때 이 메소드를 활용해서 대소문자를 구분하지 않고 작업을 해야 합니다.


String [] split(String regexp) : regexp단위로 분할해서 문자열 배열로 리턴


String substring(int start) : start 위치부터 끝까지의 문자열을 리턴

String substring(int start, int end+1) : start 부터 end까지의 문자를 문자열로 리턴


int indexOf(String str) : 앞에서부터 str을 찾아서 동일한 str을 찾으면 그 위치를 리턴

못 찾으면 음수를 리턴

int lastIndexOf(String str) : 뒤에서부터 str을 찾아서 동일한 str을 찾으면 그 위치를 리턴

못 찾으면 음수를 리턴


static String format("서식", 데이터 나열) : 데이터를 서식에 맞추어서 하나의 문자열을 만들어서 리턴

사용할 때 String.format("서식", 데이터 나열) 이렇게 사용해야 한다.

'JAVA 공책 > 수업 메모' 카테고리의 다른 글

Data Structure(자료구조)  (0) 2018.09.03
StringBuilder  (0) 2018.08.30
java lang 패키지  (0) 2018.08.28
pakage의 정의와 API의 구조와 해석법  (0) 2018.08.27
Student 테이블을 만들어서 stream API 연습하기  (0) 2018.08.07