learn use c stringbuilder class
यह ट्यूटोरियल उदाहरणों के साथ विस्तार से C # StringBuilder क्लास और उसके तरीके जैसे स्पष्ट, निकालें, निकालें, सम्मिलित करें, बदलें, और बराबर करता है:
C # में StringBuilder वर्ग स्ट्रिंग के साथ काम करता है जब दोहराए जाने वाले स्ट्रिंग ऑपरेशन के उपयोग की आवश्यकता होती है।
एक स्ट्रिंग अपरिवर्तनीय है यानी इसे बदला नहीं जा सकता है। एक बार एक निश्चित स्ट्रिंग बनाने के बाद, इसे बदला नहीं जा सकता है। स्ट्रिंग में कोई भी परिवर्तन या अपडेट मेमोरी में एक नया स्ट्रिंग ऑब्जेक्ट बनाएगा। जैसा कि यह स्पष्ट है, यह व्यवहार प्रदर्शन में बाधा उत्पन्न करेगा यदि आवर्ती ऑपरेशन उसी स्ट्रिंग पर किया जाता है।
=> यहाँ गहराई में सी # प्रशिक्षण ट्यूटोरियल की जाँच करें
C # में StringBuilder वर्ग का उद्देश्य इस समस्या को हल करना है। यह स्मृति के गतिशील आवंटन की अनुमति देता है यानी यह स्ट्रिंग में वर्णों की संख्या का विस्तार कर सकता है। यह एक नई मेमोरी ऑब्जेक्ट नहीं बनाता है बल्कि यह नए वर्णों को स्मृति आकार को गतिशील रूप से बढ़ाता है।
आप क्या सीखेंगे:
C # StringBuilder की शुरुआत कैसे करें?
StringBuilder को किसी भी अन्य वर्ग के समान प्रारंभ किया जाता है। StringBuilder वर्ग सिस्टम नामस्थान में मौजूद है। तात्कालिकता के लिए पाठ को कक्षा में आयात किया जाना चाहिए।
प्रारंभ के लिए उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का आउटपुट है:
नमस्ते
सबसे अच्छी जगह मुफ्त में मोबाइल फोनों के लिए देखने के लिए
सी # स्ट्रिंगबर्ल मेथड्स
स्ट्रिंग हेरफेर पर काम करने के लिए StringBuilder वर्ग भी कई अलग-अलग तरीके प्रदान करता है।
(१) परिशिष्ट विधि
जैसा कि नाम से ही पता चलता है कि यह मौजूदा स्ट्रिंग बिल्डर के अंत में वर्णों या स्ट्रिंग का एक सेट देता है। यह प्रदर्शन में सुधार करने में बहुत मददगार होता है जब एक ही स्ट्रिंग पर कई स्ट्रिंग कॉन्फैक्शन की आवश्यकता होती है।
उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का उत्पादन होगा:
नमस्ते
नमस्ते दुनिया
उपरोक्त कार्यक्रम में, हमने पहली बार stringBuilder के माध्यम से परिभाषित एक स्ट्रिंग की थी। फिर हमने पिछले एक के साथ एक और स्ट्रिंग को जोड़ने के लिए परिशिष्ट () का उपयोग किया। यदि हम परिशिष्ट से पहले कोड लाइन को निष्पादित करते हैं तो इसका आउटपुट 'हैलो' के रूप में होता है, लेकिन एक बार जब हम इसे जोड़ते हैं और परिणाम प्रिंट करते हैं तो यह 'हैलो वर्ल्ड' यानी पिछले स्ट्रिंग को जोड़ स्ट्रिंग के साथ प्रिंट करेगा।
# 2) स्पष्ट विधि
यह विधि सभी अक्षर को वर्तमान StringBuilder से निकाल देती है। यह उन परिदृश्यों में बहुत सहायक है जहाँ हमें एक खाली स्ट्रिंग प्राप्त करने की आवश्यकता होती है या जहाँ हमें स्ट्रिंग चर से डेटा को साफ़ करने की आवश्यकता होती है।
उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); strgBldr.Clear(); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का आउटपुट है:
नमस्ते
नमस्ते दुनिया
जब हम StringBuilder पर एक स्पष्ट ऑपरेशन करते हैं और फिर परिणामी स्ट्रिंग को प्रिंट करने का प्रयास करते हैं। हमें एक ब्लैक स्ट्रिंग वैल्यू मिलेगी। उपरोक्त कार्यक्रम में, हमने स्ट्रिंग स्ट्रिंग में मूल्य को जोड़ दिया है और हमने कंसोल को मान छाप दिया है।
फिर हमने एक स्पष्ट ऑपरेशन किया, जिसमें स्ट्रिंगबर्ल से सभी मूल्य हटा दिए गए उसके बाद जब हमने प्रिंट करने की कोशिश की, तो यह एक रिक्त मान मुद्रित किया।
# 3) विधि निकालें
निकालें स्पष्ट के समान है लेकिन थोड़े अंतर के साथ। यह StringBuilder से वर्णों को भी हटा देता है, लेकिन यह स्पष्ट के विपरीत दिए गए सीमा के भीतर ऐसा करता है जो StringBuilder में मौजूद सभी वर्णों को निकाल देता है। जब भी परिदृश्य को पूरे स्ट्रिंग के बजाय स्ट्रिंग से वर्णों का एक निश्चित सेट निकालने के लिए प्रोग्राम की आवश्यकता होती है, तो निकालें का उपयोग किया जाता है।
उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello'); Console.WriteLine(strgBldr); strgBldr.Append('World'); Console.WriteLine(strgBldr); strgBldr.Remove(2, 3); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का उत्पादन होगा:
नमस्ते
नमस्ते दुनिया
वह विश्व
निकालें दो मापदंडों को स्वीकार करता है, पहले एक शुरुआती सूचकांक यानी उस चरित्र के सूचकांक को दर्शाता है जहां से आप हटाना शुरू करना चाहते हैं। दूसरा पैरामीटर भी पूर्णांक को स्वीकार करता है जो लंबाई को दर्शाता है यानी उस चरित्र की लंबाई जिससे आप हटाना चाहते हैं।
उपरोक्त कार्यक्रम में, हमने शुरुआती सूचकांक को 2 और लंबाई को तीन के रूप में प्रदान किया। इसलिए, इसने सूचकांक 2 से चरित्र को हटाना शुरू कर दिया, अर्थात् वह नहीं था और हमने लंबाई तीन बताई, इसलिए कार्यक्रम ने तीन वर्णों को ’l’ से हटा दिया और इस प्रकार l l l o ’हटा दिया गया।
सेलेनियम में निहित और स्पष्ट प्रतीक्षा के बीच अंतर
# 4) तरीका डालें
यह दिए गए इंडेक्स में स्ट्रिंग के अंदर एक या एक से अधिक अक्षर सम्मिलित करता है। यह उपयोगकर्ता को स्ट्रिंग या चरित्र को स्ट्रिंगबर्ल में सम्मिलित करने की संख्या को निर्दिष्ट करने की अनुमति देता है। इसका उपयोग उन स्थितियों में किया जाता है जहां पात्रों को एक विशिष्ट स्थिति में दिए गए स्ट्रिंग में डालने की आवश्यकता होती है।
उदाहरण:
class Program { publicstaticvoid Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello World'); Console.WriteLine(strgBldr); strgBldr.Insert(2, '_insert_'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का उत्पादन होगा:
नमस्ते दुनिया
He_insert_llo दुनिया
उपरोक्त कार्यक्रम में, सम्मिलित विधि का उपयोग एक निश्चित सूचकांक पर वर्णों को सम्मिलित करने के लिए किया जाता है। सम्मिलित विधि दो मापदंडों को स्वीकार करती है। पहला पैरामीटर एक पूर्णांक है जो सूचकांक को दर्शाता है जहां वर्ण सम्मिलित किए जाने हैं। दूसरा पैरामीटर उन वर्णों को स्वीकार करता है जिन्हें उपयोगकर्ता दिए गए सूचकांक में सम्मिलित करना चाहता है।
# 5) विधि बदलें
प्रतिस्थापित विधि उपयोगकर्ता द्वारा प्रदान किए गए स्ट्रिंग या वर्ण द्वारा स्ट्रिंग स्ट्रिंग में निर्दिष्ट स्ट्रिंग की सभी घटनाओं को प्रतिस्थापित करता है। यह एक विशिष्ट सूचकांक में विशिष्ट वर्णों की जगह लेता है। इसका उपयोग उन परिदृश्यों में किया जा सकता है जहां कुछ वर्णों को किसी अन्य वर्ण द्वारा प्रतिस्थापित किया जाना आवश्यक है।
उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr = new StringBuilder('Hello World'); Console.WriteLine(strgBldr); strgBldr.Replace('Hello', 'Hi'); Console.WriteLine(strgBldr); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का आउटपुट है:
नमस्ते दुनिया
दुनिया
उपरोक्त कार्यक्रम में, हमने 'नमस्ते' को 'हाय' से बदलने के लिए रिप्लेस विधि का उपयोग किया। प्रतिस्थापित विधि दो मापदंडों को स्वीकार करता है, पहला वह स्ट्रिंग या वर्ण जिसे आप बदलना चाहते हैं और दूसरा वह स्ट्रिंग या वर्ण है जिसे आप बदलना चाहते हैं।
# 6) बराबर विधि
जैसा कि नाम से पता चलता है कि यह सत्यापित करता है कि क्या एक स्ट्रिंगबर्ल दूसरों के बराबर है या नहीं। यह StringBuilder को एक पैरामीटर के रूप में स्वीकार करता है और प्राप्त की गई बराबरी की स्थिति के आधार पर एक बूलियन मान देता है। यदि आप दो स्ट्रिंगबल्डर्स के लिए समानता की स्थिति को मान्य करना चाहते हैं तो यह विधि काफी उपयोगी है।
उदाहरण:
class Program { public static void Main(string[] args) { StringBuilder strgBldr1 = new StringBuilder('Hello World'); StringBuilder strgBldr2 = new StringBuilder('World'); StringBuilder strgBldr3 = new StringBuilder('Hello World'); Console.WriteLine(strgBldr1.Equals(strgBldr2)); Console.WriteLine(strgBldr1.Equals(strgBldr3)); Console.ReadLine(); } }
उपरोक्त कार्यक्रम का उत्पादन होगा:
असत्य
सच
उपरोक्त कार्यक्रम में, पहली और तीसरी StringBuilder वस्तुएं समान हैं यानी उनका समान मूल्य है। इसलिए, जब हमने दूसरे के साथ पहले की बराबरी की, तो उसने एक गलत मूल्य लौटाया लेकिन जब हमने पहले और तीसरे के बराबर होने पर उसे वापस लौटा दिया।
निष्कर्ष
स्ट्रिंग # में स्ट्रिंगरब्यूलर क्लास का उपयोग प्रदर्शन में सुधार के लिए किया जाता है जहां एक स्ट्रिंग पर कई ऑपरेशन किए जाते हैं।
अपरिवर्तनीय होने के नाते, जब भी एक स्ट्रिंग को संशोधित किया जाता है तो यह मेमोरी में एक और स्ट्रिंग ऑब्जेक्ट बनाता है। StringBuilder को कम करना है।
यह उपयोगकर्ता को गतिशील मेमोरी को आवंटित करके उसी वस्तु पर संशोधन करने की अनुमति देता है। इसका मतलब है कि अधिक डेटा को समायोजित करने के लिए आवश्यक होने पर यह मेमोरी साइज बढ़ा सकता है।
=> यहां सी # गाइड फॉर बिगिनर्स के माध्यम से पढ़ें
अनुशंसित पाठ
- सी # स्ट्रिंग ट्यूटोरियल - कोड उदाहरण के साथ स्ट्रिंग के तरीके
- तुलना परीक्षण क्या है (उदाहरण के साथ जानें)
- कोड उदाहरण के साथ सी # कार्य / तरीके ट्यूटोरियल
- उदाहरण के साथ जावा इंटरफेस और एब्सट्रैक्ट क्लास ट्यूटोरियल
- जावा थ्रेड्स विथ मेथड्स एंड लाइफ साइकल
- C ++ में दिनांक और समय कार्य उदाहरण के साथ
- शैल C ++ में उदाहरणों के साथ
- उदाहरण के साथ C ++ में लैंबडास