>  기사  >  Java  >  Java의 StringBuffer 클래스

Java의 StringBuffer 클래스

WBOY
WBOY원래의
2024-08-30 15:42:11548검색

기본적으로 Java 객체에는 두 가지 유형이 있다는 것을 알고 있듯이 변경 가능 객체와 불변 객체입니다. 불변 객체는 일단 생성되면 내용을 수정할 수 없는 객체입니다. 불변 객체의 내용이 변경될 때마다 새로운 객체가 생성됩니다. 변경 가능한 개체의 경우 새 개체가 생성되지 않도록 기존 개체의 내용을 변경할 수 있습니다. 따라서 변경 가능한 문자열은 새 객체를 생성하지 않고도 내용을 변경할 수 있는 문자열입니다.

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

StringBuffer 및 StringBuilder는 Java에서 String의 변경 가능한 버전인 반면, Java String 클래스는 변경할 수 없습니다. 따라서 StringBuffer는 문자열 객체에 가변성을 제공하는 데 사용되는 가변 문자열입니다. 문자열 클래스에는 고정 길이의 불변 문자 시퀀스가 ​​포함되어 있는 반면, 문자열 버퍼에는 확장 가능한 길이와 쓰기 가능한 문자 시퀀스가 ​​포함되어 있습니다.

Java에서 문자열 버퍼 클래스를 사용하는 방법은 무엇입니까?

다음은 Java에서 StringBuffer를 사용하는 방법을 보여주는 몇 가지 사항입니다.

  • 이미 다루었듯이 Java에서 가변 문자열은 StringBuffer 및 StringBuilder 클래스를 사용하여 생성할 수 있습니다.
  • 둘 사이의 주요 차이점은 StringBuffer는 스레드로부터 안전한 구현인 반면 StringBuilder는 그렇지 않다는 것입니다.
  • 고성능과 높은 보안이 필요할 때마다 String 클래스의 변경 가능한 버전을 선호해야 합니다.
  • String 풀 때문에 String 클래스에 보안 문제가 있습니다. 따라서 데이터 보안이 필요할 때마다 StringBuffer가 사용됩니다.
  • StringBuffer는 스레드로부터 안전하기 때문에 StringBuffer보다 성능 측면에서 더 우수하지만 스레드 안전이 필요할 때마다 StringBuffer를 사용해야 합니다.

StringBuffer 생성자

다음은 문자열 버퍼 생성자입니다.

  • StringBuffer(): 기본 용량이 16자인 빈 StringBuffer를 생성합니다.
  • StringBuffer(int 용량): 지정된 용량의 빈 StringBuffer를 생성합니다.
  • StringBuffer(CharSequence charseq): 지정된 문자 시퀀스와 동일한 문자를 포함하는 StringBuffer를 생성합니다.
  • StringBuffer(String str): 지정된 문자열에 해당하는 StringBuffer를 생성합니다.

다음은 StringBuffer 클래스 선언입니다.

public final class StringBuffer extends Object implements Serializable,CharacterSequence,Appendable

Java의 StringBuffer 클래스 메서드

이제 StringBuffer에서 사용할 수 있는 다양한 메서드와 필드가 무엇인지 살펴보겠습니다. 다음은 StringBuffer 클래스에서 일반적으로 사용되는 메서드 목록입니다.

메서드명 설명
길이()와 용량() 가변 문자열의 길이는 length() 메소드를 사용하여 계산할 수 있으며 해당 용량은capacity()를 사용하여 계산할 수 있습니다.
추가(문자열 문자열)

추가(정수)

이 방법은 기존 문자열 버퍼 끝에 새 텍스트를 추가하는 데 사용됩니다.
삽입(int index, String str)

삽입(int index, char ch)

주어진 문자열의 지정된 위치에 텍스트를 삽입하는 데 사용됩니다. 주어진 구문 인덱스에서 문자열이 삽입될 시작 인덱스를 지정합니다.
역방향() 주어진 문자열 버퍼 개체에서 문자 순서를 바꾸는 데 사용됩니다.
delete(int start, int end) 및 deleteCharAt(int index) 문자열 버퍼에서 문자를 삭제하는 데 사용됩니다. Start는 제거할 첫 번째 문자의 시작 인덱스를 나타내고, end는 제거할 마지막 문자 다음의 인덱스를 나타냅니다.
replace(int startindex, int endindex, String str) startindex와 endindex-1 사이의 문자 시퀀스를 지정된 문자열 버퍼로 바꾸는 데 사용됩니다.
charAt(int 인덱스) 문자열 버퍼의 지정된 인덱스에 있는 문자를 반환하는 데 사용됩니다.
codePointAt(int 인덱스) 지정된 인덱스에 있는 문자의 유니코드를 반환하는 데 사용됩니다.
codePointBefore(int 인덱스) 지정된 인덱스 앞에 있는 문자의 유니코드를 반환하는 데 사용됩니다.
하위 문자열(int 시작)

substring(int start, int end)

Used to return a new String that contains a subsequence of characters contained in a given string.
ensureCapacity(int capacity) Used for increasing the capacity of an existing string buffer object.
toString() Used to convert mutable string buffer to an immutable string object.

Examples of StringBuffer Class in Java

Here are some of the examples of StringBuffer class which are given below:

Example #1

Let us see a basic example of the StringBuffer class.

Code:

public class StringBufferDemo{
public static void main(String args[]){
StringBuffer sBuffer1=new StringBuffer("Welcome");
System.out.println("Original String is ::: " + sBuffer1 + ":: having length " + sBuffer1.length());
//using append method
sBuffer1.append(" To Edubca");
System.out.println("Modified String after append is :: " + sBuffer1 + " :: having length " + sBuffer1.length());
//using reverse method
sBuffer1.reverse();
System.out.println("Modified String after Reverse is :: " + sBuffer1);
}
}

The above code shows the creation of java StringBuffer and its different methods. The following output will be produced.

Output:

Java의 StringBuffer 클래스

Example #2

In this example, we will see some more methods of the StringBuffer class.

Code:

public class StringBufferDemo{
public static void main(String args[]){
StringBuffer sBuffer=new StringBuffer ("WelcomeToEdubca");
System.out.println("Original String is ::: " + sBuffer + ":: having length " + sBuffer.length());
//using replace method
sBuffer.replace(0,9,"This is ");
System.out.println("Modified String after replace is :: " + sBuffer + " :: having length " + sBuffer.length());
//using delete method
sBuffer.delete(0,7);
System.out.println("Modified String after delete is :: " + sBuffer);
}
}

The above code will display the following as output.

 Output:

Java의 StringBuffer 클래스

In the above example, we have seen how to create a StringBuffer class and usage of its methods.

Conclusion

From the above discussion, we have a clear understanding of StringBuffer in java, how it is created, and the different methods available in the StringBuffer class. Also, StringBuffer is thread-safe; therefore, it can be used in a multithreading environment.

위 내용은 Java의 StringBuffer 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:settimeout 자바다음 기사:settimeout 자바