"아미고, 어떻게 생각해? int 다음으로 가장 인기 있는 자바 클래스는 뭐야?"
"이미 수업 제목에 스포일러를 주셨군요, 엘리. 바로 String
!"
"실제로, 그것은 스포일러입니다. String
절대적으로 모든 곳에서 사용됩니다. 알고 있으면 더 좋은 유용한 방법이 많이 있습니다.
" String
클래스는 문에서 리터럴을 사용할 수 있는 기본 유형 이외의 유일한 클래스입니다 switch
. 컴파일러는 문자열 추가 및 문자열 개체를 특별한 방식으로 처리합니다. String
개체는 특별한 방식으로 메모리에 저장됩니다. 기본적으로 클래스 String
는 매우 특별 수업.
"또한 이 String
클래스에는 Java에서 문자열 작업을 더욱 단순화하는 것을 목적으로 하는 많은 도우미 클래스가 있습니다. 이 모든 것을 배우면 많은 작업을 훨씬 쉽게 수행할 수 있습니다."
"나는 기다릴 수 없어."
"음, 우리는 이 생태계의 핵심인 클래스의 구성부터 시작할 것입니다 String
. 클래스의 구조는 실제로 매우 간단합니다. 클래스 내부에는 문자열의 모든 문자를 저장하는 문자 배열 ( 배열) String
이 있습니다 . 예를 들어 'Hello'라는 단어가 저장되는 방식은 다음과 같습니다.char
중요합니다.
사실 이것은 정확하지 않습니다. 클래스는 매우 중요하기 때문에 String
많은 최적화를 사용하고 데이터는 내부적으로 문자 배열이 아닌 단순히 바이트 배열로 저장됩니다.
String 클래스의 메서드
이 String
클래스에는 많은 메서드가 있습니다. 생성자만 18개입니다! 따라서 아래에는 가장 자주 사용되는 항목만 나열합니다.
행동 양식 | 설명 |
---|---|
|
문자열의 문자 수를 반환합니다. |
|
문자열이 빈 문자열인지 확인 |
|
문자열에 공백, 탭, 새 줄 등의 공백 문자만 포함되어 있는지 확인합니다. |
|
문자열의 인덱스 위치에 있는 문자를 반환합니다. |
|
문자열을 구성하는 문자(사본)의 배열을 반환합니다. |
|
문자열을 바이트 집합으로 변환하고 바이트 배열을 반환합니다. |
|
문자열을 여러 하위 문자열로 분할합니다. |
|
여러 하위 문자열을 함께 결합 |
|
문자열을 문자열 풀에 넣습니다. |
"매우 좋아 보인다!"
"파일 경로를 Unix 스타일에서 Windows 스타일로 변환하는 프로그램을 작성해 봅시다. Unix는 문자를 사용하여 /
폴더를 구분하고 Windows는 \
문자를 사용합니다.
솔루션 1.char
어레이 사용
암호 | 노트 |
---|---|
|
스캐너 개체 만들기 콘솔에서 라인 읽기 문자열을 문자 배열로 변환 문자를 반복합니다 . 문자가 이면 로 바꿉니다 . 탈출하는 것을 잊지 마십시오. 문자 배열을 기반으로 새 문자열을 만듭니다. 문자열을 표시합니다. / \ |
솔루션 2.split()
및 방법 사용 join()
:
암호 | 노트 |
---|---|
|
스캐너 개체 만들기 콘솔에서 한 줄 읽기 문자열을 문자열 배열 로 변환합니다 . 문자 는 구분 기호로 사용됩니다(두 개의 추가 슬래시는 이중 이스케이프의 결과입니다). strings 배열 의 모든 문자열을 연결합니다 . 는 구분 기호로 사용됩니다(이스케이프 처리됨). 문자열을 표시합니다. / \ |
솔루션 3. 방법 사용 replace(char oldChar, char newChar)
:
암호 | 노트 |
---|---|
|
스캐너 개체 만들기 콘솔에서 한 줄 읽기 한 문자를 다른 문자로 바꾸기만 하면 됩니다 (두 번째 문자는 이스케이프됨) . 문자열을 표시합니다. |
"저는 세 번째 솔루션이 가장 마음에 들었습니다. 하지만 세 가지 모두 연습하겠습니다."
"잘했어, 아미고. 이미 새로운 지식을 실행에 옮기는 데 조바심을 내고 있는 것 같군. 수업은 끝났어."
GO TO FULL VERSION