जोड़कर जबकि मैं जब भी तरह स्ट्रिंग में संख्या को जोड़ने का प्रयास:स्पीड मुद्दा तार
String s=new String();
for(int j=0;j<=1000000;j++)
s+=String.valueOf(j);
मेरे कार्यक्रम जोड़कर मिलने जाता है, लेकिन बहुत धीरे धीरे। लेकिन जब मैंने अपना प्रोग्राम बदल दिया और इसे बनाया:
StringBuffer sb=new StringBuffer();
for(int j=0;j<=1000000;j++)
sb.append(String.valueOf(j));
मुझे परिणाम बहुत जल्दी मिला। ऐसा क्यों हैं?
http://www.joelonsoftware.com/ लेख/fog0000000319.html – moonshadow
क्या मैं आपको प्रभावी जावा पढ़ने के लिए सुझाव देता हूं http://www.amazon.com/Effective-Java-2nd-Joshua-Bloch/dp/0321356683 इस पुस्तक में जावा प्रोग्रामिंग के बुनियादी ज्ञान शामिल होंगे। यदि आपके पास और सवाल है, तो आप अभी भी यहां वापस जा सकते हैं, बेशक – nanda
यदि आप स्ट्रिंगबफर को पूर्व-आकार देते हैं तो यह तेज़ हो जाएगा: 'स्ट्रिंगबफर एसबी = नया स्ट्रिंगबफर (5888896);' फिर यह * यदि आप 'स्ट्रिंगबिल्डर' में बदल जाते हैं तो थोड़ा * तेज़ फिर से। संयोग से, आप केवल 'sb.append (j) का उपयोग कर सकते हैं;' संख्या को जोड़ने के लिए। स्ट्रिंगबिल्डर के लिए –