1. तार संशोधित करना
जावा में, तार अपरिवर्तनीय वस्तुएं हैं। यह स्ट्रिंग वर्ग को अत्यधिक अनुकूलित करने और इसे हर जगह उपयोग करने की अनुमति देने के लिए किया गया था। उदाहरण के लिए, हैश मैप संग्रह में कुंजी के रूप में उपयोग के लिए केवल अपरिवर्तनीय प्रकारों की अनुशंसा की जाती है ।
String
हालाँकि, अक्सर ऐसी परिस्थितियाँ उत्पन्न होती हैं जब प्रोग्रामर को कक्षा के परिवर्तनशील होने के लिए यह अधिक सुविधाजनक लगता है । वे एक ऐसा वर्ग चाहते हैं जो हर बार एक नया सबस्ट्रिंग नहीं बनाता है, इसके किसी एक तरीके को कहा जाता है।
ठीक है, मान लीजिए कि हमारे पास एक बहुत बड़ी स्ट्रिंग है और हमें इसके अंत में बार-बार कुछ जोड़ने की आवश्यकता है। इस मामले में, वर्णों का एक संग्रह भी ( ArrayList<Character>
) स्ट्रिंग वस्तुओं को लगातार बनाने और जोड़ने से अधिक कुशल हो सकता है।
यही कारण है कि एक स्ट्रिंग-जैसा प्रकार जिसे बदला जा सकता है, जावा भाषा में जोड़ा गया था। इसे कहा जाता है StringBuilder
।
एक वस्तु बनाना
किसी मौजूदा स्ट्रिंग के आधार पर ऑब्जेक्ट बनाने के लिए StringBuilder
, आपको एक स्टेटमेंट निष्पादित करने की आवश्यकता है:
StringBuilder name = new StringBuilder(string);
एक खाली परिवर्तनशील स्ट्रिंग बनाने के लिए, आपको इस तरह के एक कथन का उपयोग करने की आवश्यकता है:
StringBuilder name = new StringBuilder();
विधियों की सूची
कक्षा StringBuilder
में दो दर्जन सहायक विधियाँ हैं। यहाँ सबसे महत्वपूर्ण हैं:
तरीका | विवरण |
---|---|
|
पारित वस्तु को एक स्ट्रिंग में परिवर्तित करता है और इसे वर्तमान स्ट्रिंग में जोड़ता है |
|
पारित वस्तु को एक स्ट्रिंग में परिवर्तित करता है और इसे वर्तमान स्ट्रिंग में सम्मिलित करता है |
|
प्रारंभ..अंत अंतराल द्वारा निर्दिष्ट स्ट्रिंग के भाग को पारित स्ट्रिंग के साथ बदलता है |
|
स्ट्रिंग से निर्दिष्ट इंडेक्स वाले वर्ण को हटाता है |
|
स्ट्रिंग से निर्दिष्ट अंतराल के भीतर वर्णों को हटाता है |
|
वर्तमान स्ट्रिंग में एक सबस्ट्रिंग की खोज करता है |
|
अंत से शुरू करते हुए, वर्तमान स्ट्रिंग में एक सबस्ट्रिंग की खोज करता है |
|
पास किए गए इंडेक्स पर स्ट्रिंग में वर्ण लौटाता है |
|
निर्दिष्ट अंतराल द्वारा परिभाषित सबस्ट्रिंग देता है |
|
वर्तमान स्ट्रिंग को उलट देता है। |
|
निर्दिष्ट इंडेक्स पर वर्ण को पास किए गए वर्ण में बदल देता है |
|
वर्णों में स्ट्रिंग की लंबाई लौटाता है |
यहां प्रत्येक विधि का संक्षिप्त विवरण दिया गया है
2. विधियों का विवरण:
एक स्ट्रिंग से जुड़ रहा है
एक परिवर्तनशील स्ट्रिंग ( ) में कुछ जोड़ने के लिए StringBuilder
, append()
विधि का उपयोग करें। उदाहरण:
कोड | विवरण |
---|---|
|
|
एक मानक स्ट्रिंग में कनवर्ट करना
StringBuilder
किसी ऑब्जेक्ट को स्ट्रिंग ऑब्जेक्ट में बदलने के लिए , आपको बस इसकी toString()
विधि को कॉल करना होगा। उदाहरण
कोड | उत्पादन |
---|---|
|
|
मैं एक चरित्र को कैसे हटाऊं?
एक परिवर्तनीय स्ट्रिंग में एक वर्ण को हटाने के लिए, आपको deleteCharAt()
विधि का उपयोग करने की आवश्यकता है। उदाहरण:
कोड | उत्पादन |
---|---|
|
|
मैं एक स्ट्रिंग के हिस्से को दूसरी स्ट्रिंग से कैसे बदलूं?
इसके लिए विधि है replace(int begin, int end, String str)
। उदाहरण:
कोड | उत्पादन |
---|---|
|
|
3. तार के साथ काम करने के उपयोगी उदाहरण
मैं एक स्ट्रिंग कैसे उलट सकता हूँ?
इसे करने की एक विशेष विधि है- reverse()
; उदाहरण:
कोड | उत्पादन |
---|---|
|
|
StringBuffer
कक्षा
एक और वर्ग है - स्ट्रिंगबफ़र, जो StringBuilder
वर्ग का एक एनालॉग है, लेकिन इसके तरीकों को synchronized
संशोधक के साथ चिह्नित किया गया है। इसका मतलब है कि StringBuffer
ऑब्जेक्ट को एक साथ कई थ्रेड्स से एक्सेस किया जा सकता है।
लेकिन यह की तुलना में बहुत धीमी है StringBuilder
। जब आप जावा मल्टीथ्रेडिंग खोज में सक्रिय रूप से मल्टीथ्रेडिंग का पता लगाना शुरू करते हैं तो आपको इस वर्ग की आवश्यकता हो सकती है।
GO TO FULL VERSION