English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java에서 문자열 버퍼와 문자 생성기 간의 차이

문자열 버퍼와 StringBuilder는 모두 변경 가능한 클래스로, 문자 객체에 대한 작업을 수행할 수 있습니다. 예를 들어, 문자열을 반대로, 문자열을 압축하는 등의 작업을 수행할 수 있습니다. 새 문자 객체를 생성하지 않고 문자를 수정할 수 있습니다. 문자 버퍼는 스레드 안전하며, 문자 생성기는 스레드 안전하지 않습니다. 따라서, 문자 버퍼보다 빠릅니다. 또한, 문자 concat +연산자는 StringBuffer나 StringBuilder 클래스에서 내부에서 사용됩니다. 다음은 차이점입니다.

순번StringBuffer문자열 생성기
1
기본

Java의 초기 버전에서 StringBuffer가 도입되었습니다

그것은 Java 5에서 도입된
2
동기화
그것은 동기화됩니다비동기 
3성능 

그것은 스레드 안전합니다. 따라서 여러 스레드가 동시에 접근할 수 없기 때문에 속도가 느립니다

그것은 스레드 안전하지 않으므로 문자열 버퍼보다 빠릅니다 
4변경 가능

그것은 변경 가능합니다. 문자열을 변경할 수 있지만 객체를 생성하지 않습니다

그것은 변경 가능합니다 
5
저장 
스택
스택

StringBuilder의 예제

public class StringBuilderExample{
   public static void main(String[] args){
      StringBuilder builder=new StringBuilder("Hi");
      builder.append("Java 8");
      System.out.println("StringBuilderExample" +builder);
   }
}

StringBuffer의 예제

public class StringBufferExample{
   public static void main(String[] args){
      StringBuffer buffer=new StringBuffer("Hi");
      buffer.append("Java 8");
      System.out.println("StringBufferExample" +buffer);
   }
}
추천해드립니다