स्ट्रिंगबफर ऑब्जेक्ट आमतौर पर बहु-थ्रेडेड वातावरण में उपयोग करने के लिए सुरक्षित होते हैं जहां एकाधिक थ्रेड एक ही StringBuffer . तक पहुंचने का प्रयास कर रहे हों एक ही समय में वस्तु। स्ट्रिंगबिल्डर थ्रेड-सुरक्षित StringBuffe . के लिए एक प्रतिस्थापन है आर वर्ग और यह बहुत तेजी से काम करता है क्योंकि इसमें कोई सिंक्रनाइज़ . नहीं है तरीके। यदि हम एक ही थ्रेड में बहुत सारे स्ट्रिंग ऑपरेशन कर रहे हैं, तो हम बहुत अधिक प्रदर्शन प्राप्त कर सकते हैं। इस वर्ग का उपयोग करते समय।
उदाहरण
public class CompareBuilderwithBufferTest { public static void main(String []args) { stringBufferTest(); stringBuilderTest(); } public static void stringBufferTest() { long startTime = System.nanoTime(); StringBuffer sb = new StringBuffer(); for (int i=0; i < 1000; i++) { sb.append((char) 'a'); } System.out.println("StringBuffer test: " + (System.nanoTime() - startTime)); } public static void stringBuilderTest() { long startTime = System.nanoTime(); StringBuilder sb = new StringBuilder(); for (int i=0; i < 1000; i++) { sb.append((char) 'a'); } System.out.println("StringBuilder test: " + (System.nanoTime() - startTime)); } }
आउटपुट
StringBuffer test: 192595 StringBuilder test: 85733