StringBuilder आणि StringBuffer

जावा मल्टीथ्रेडिंग
पातळी 2 , धडा 8
उपलब्ध

"आम्हाला फक्त स्ट्रिंगबिल्डर कव्हर करावे लागेल आणि मग मला वाटते की आम्ही पूर्ण केले."

"तुम्हाला आधीच माहित आहे की, StringBuilder हे स्ट्रिंग क्लाससारखे आहे, शिवाय ते बदलण्यायोग्य आहे."

"आणि मला हे देखील लक्षात आहे की जेव्हा आपण स्ट्रिंग्स एकत्र जोडतो तेव्हा कंपाइलर स्ट्रिंगबिल्डर वापरणारा कोड तयार करतो."

"हो, तुझं बरोबर आहे. तुझ्याकडे किती विलक्षण स्मृती आहे. मग पुन्हा, प्रत्येक रोबोट करतो. मी ते नेहमी विसरतो."

" स्ट्रिंगबिल्डर क्लास वापरून तुम्ही काय करू शकता ते तपासूया :"

1) माझ्याकडे एक सामान्य स्ट्रिंग आहे आणि मला ती बदलण्यायोग्य बनवायची आहे. मी ते कसे करू?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);

2) मला विद्यमान बदलण्यायोग्य स्ट्रिंगमध्ये एक वर्ण जोडायचा आहे?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");

3) आणि मी स्ट्रिंगबिल्डरला परत स्ट्रिंगमध्ये कसे रूपांतरित करू?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");
s = s2.toString();

4) आणि जर मला एखादे पात्र हटवायचे असेल तर?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.deleteCharAt(2); //Becomes "Beder"

५) मी स्ट्रिंगचा भाग दुसर्‍याने कसा बदलू?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.replace (3, 5, "_DE_"); //Becomes "Ben_DE_r"

६) जर मला स्ट्रिंग उलट करायची असेल तर?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.reverse(); //Becomes "redneB";

"छान. धन्यवाद, एली, सर्वकाही अर्थ प्राप्त होतो."

"तुला ते आवडले याचा मला आनंद आहे."

"बिलाबोने तुला सांगायला हवे होते त्याबद्दल मी तुला आठवण करून देऊ इच्छितो."

" स्ट्रिंगबफर नावाचा आणखी एक वर्ग आहे . तो StringBuilder सारखा आहे , परंतु त्याच्या पद्धती समक्रमित म्हणून घोषित केल्या जातात. याचा अर्थ असा आहे की कोणत्याही पद्धतीला कॉल करण्यापूर्वी Java मशीन ऑब्जेक्ट व्यस्त आहे की नाही हे तपासते; जर तसे नसेल तर JVM त्यास चिन्हांकित करते. व्यस्त म्हणून. पद्धतीतून बाहेर पडल्यानंतर, ऑब्जेक्ट रिलीझ केला जातो. परिणामी, हे कॉल्स धीमे आहेत. तुम्ही स्ट्रिंगबफरचा वापर करू नये .

"परंतु जर तुम्हाला म्युटेबल स्ट्रिंगची आवश्यकता असेल जी एकाधिक थ्रेड्सवर वापरली जाईल, तर तुम्हाला StringBuffer पेक्षा चांगले काहीही सापडणार नाही ."

"माहितीबद्दल धन्यवाद. मला वाटते की ते एखाद्या दिवशी उपयोगी पडेल."

टिप्पण्या
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION