1. 문자열 수정
Java에서 문자열은 불변 객체입니다. 이는 String 클래스를 고도로 최적화하고 모든 곳에서 사용할 수 있도록 하기 위해 수행되었습니다. 예를 들어 HashMap 컬렉션의 키로 사용할 때는 변경 불가능한 유형만 권장됩니다 .
그러나 프로그래머가 클래스를 String
변경할 수 있는 것이 더 편리하다고 생각하는 상황이 자주 발생합니다. 그들은 메서드 중 하나가 호출될 때마다 새 하위 문자열을 만들지 않는 클래스를 원합니다.
음, 매우 큰 문자열이 있고 그 끝에 무언가를 자주 추가해야 한다고 가정합니다. 이 경우 문자열 개체를 계속해서 다시 만들고 연결하는 것보다 문자 모음( ArrayList<Character>
)이 더 효율적일 수 있습니다.
이것이 바로 Java 언어에 변경 가능한 문자열과 같은 유형이 추가된 이유입니다. 라고 합니다 StringBuilder
.
개체 만들기
기존 문자열을 기반으로 객체를 생성하려면 StringBuilder
다음과 같은 명령문을 실행해야 합니다.
StringBuilder name = new StringBuilder(string);
빈 가변 문자열을 만들려면 다음과 같은 명령문을 사용해야 합니다.
StringBuilder name = new StringBuilder();
방법 목록
이 StringBuilder
클래스에는 24개의 유용한 메서드가 있습니다. 다음은 가장 중요한 것입니다.
방법 | 설명 |
---|---|
|
전달된 객체를 문자열로 변환하고 현재 문자열에 추가합니다. |
|
전달된 객체를 문자열로 변환하고 현재 문자열에 삽입 |
|
start..end 간격으로 지정된 문자열 부분을 전달된 문자열로 바꿉니다. |
|
문자열에서 지정된 인덱스를 가진 문자를 제거합니다. |
|
문자열에서 지정된 간격 내의 문자를 제거합니다. |
|
현재 문자열에서 하위 문자열을 검색합니다. |
|
끝에서 시작하여 현재 문자열에서 하위 문자열을 검색합니다. |
|
전달된 인덱스에 있는 문자열의 문자를 반환합니다. |
|
지정된 간격으로 정의된 하위 문자열을 반환합니다. |
|
현재 문자열을 뒤집습니다. |
|
지정된 인덱스의 문자를 전달된 문자로 변경합니다. |
|
문자열의 길이를 문자로 반환 |
다음은 각 방법에 대한 간략한 설명입니다.
2. 방법 설명:
문자열에 추가
변경 가능한 문자열( StringBuilder
) 에 무언가를 추가하려면 append()
메소드를 사용하십시오. 예:
암호 | 설명 |
---|---|
|
|
표준 문자열로 변환
StringBuilder
개체를 String 개체로 변환하려면 toString()
메서드를 호출하기만 하면 됩니다. 예
암호 | 산출 |
---|---|
|
|
캐릭터는 어떻게 삭제하나요?
변경 가능한 문자열에서 문자를 삭제하려면 메서드를 사용해야 합니다 deleteCharAt()
. 예:
암호 | 산출 |
---|---|
|
|
문자열의 일부를 다른 문자열로 바꾸려면 어떻게 해야 합니까?
이를 위한 방법이 있습니다 replace(int begin, int end, String str)
. 예:
암호 | 산출 |
---|---|
|
|
3. 문자열 작업의 유용한 예
어떻게 문자열을 반전합니까?
이를 위한 특별한 방법이 있습니다 — reverse()
; 예:
암호 | 산출 |
---|---|
|
|
StringBuffer
수업
또 다른 클래스인 StringBuffer가 있습니다. 이 클래스는 StringBuilder
클래스와 유사하지만 해당 메서드는 synchronized
수정자로 표시됩니다. 이는 StringBuffer
객체가 여러 스레드에서 동시에 액세스될 수 있음을 의미합니다.
그러나 .보다 훨씬 느립니다 StringBuilder
. Java 멀티스레딩 퀘스트 에서 멀티스레딩을 적극적으로 탐색하기 시작할 때 이 클래스가 필요할 수 있습니다 .
GO TO FULL VERSION