खोज…


सिस्टम। स्ट्रिंग वर्ग

C # (और .NET में) एक स्ट्रिंग को क्लास System.String द्वारा दर्शाया गया है। इस वर्ग के लिए string कीवर्ड एक उपनाम है।

System.String वर्ग अपरिवर्तनीय है, अर्थात एक बार निर्मित होने के बाद इसकी स्थिति को परिवर्तित नहीं किया जा सकता है।

इसलिए आप जो भी ऑपरेशन करते हैं जैसे सबस्ट्रिंग, रिमूव, रिप्लेस, कॉन्टेक्स्टनेशन + कंस्ट्रक्टर + आदि का उपयोग करके एक नया स्ट्रींग बनाएंगे और उसे वापस लौटाएंगे।

प्रदर्शन के लिए निम्नलिखित कार्यक्रम देखें -

string str = "mystring";
string newString = str.Substring(3);
Console.WriteLine(newString);
Console.WriteLine(str);

यह क्रमशः string और mystring प्रिंट करेगा।

तार और अपरिवर्तनशीलता

अपरिवर्तनीय प्रकार वे प्रकार होते हैं जो जब परिवर्तित होते हैं, तो स्मृति में मौजूदा वस्तु को बदलने के बजाय, स्मृति में ऑब्जेक्ट का एक नया संस्करण बनाते हैं। इसका सबसे सरल उदाहरण अंतर्निहित string प्रकार है।

निम्नलिखित कोड लेते हुए, जो "हैलो" शब्द पर "दुनिया" जोड़ता है

string myString = "hello";
myString += " world";

इस मामले में स्मृति में क्या हो रहा है कि जब आप दूसरी पंक्ति में string को जोड़ते हैं तो एक नई वस्तु बनाई जाती है। यदि आप एक बड़े लूप के हिस्से के रूप में ऐसा करते हैं, तो इसके लिए आपके आवेदन में प्रदर्शन के मुद्दों को पैदा करने की क्षमता है।

एक के लिए अस्थायी बराबर string एक है StringBuilder

निम्नलिखित कोड ले रहा है

StringBuilder myStringBuilder = new StringBuilder("hello");
myStringBuilder.append(" world");

जब आप इसे चलाते हैं, तो आप StringBuilder ऑब्जेक्ट को स्मृति में संशोधित कर रहे हैं।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow