Avatar ·

C# में String और string में क्या अंतर है? क्या ये अलग प्रकार हैं?

सभी को नमस्कार! मैंने हाल ही में C# सीखना शुरू किया है, और एक बात मुझे भ्रमित कर रही है। विभिन्न कोड उदाहरणों में मैं देखता हूँ कि स्ट्रिंग्स को अलग-अलग तरीकों से घोषित किया जाता है: कोई `string name = "John";` लिखता है, तो कोई `String name = "John";`। दोनों काम करते हैं, IntelliSense कोई त्रुटि नहीं दिखाता। लेकिन ये अलग-अलग नाम हैं, है ना? हो सकता है, `String` .NET का एक class हो, और `string` कोई primitive type हो? या ये एक ही चीज़ हैं? मैंने ऐसा कोड लिखने की कोशिश की: ```csharp string a = "Hello"; String b = "World"; Console.WriteLine(a.GetType()); // System.String Console.WriteLine(b.GetType()); // System.String Console.WriteLine(a == b); // True ``` दोनों बार `System.String` आउटपुट होता है, और तुलना काम करती है। लेकिन अगर ये एक ही हैं, तो दो नाम क्यों हैं? हो सकता है, performance या मेमोरी के साथ काम करने में कोई अंतर हो? या यह सिर्फ style का सवाल है? कृपया विस्तृत स्पष्टीकरण दें, ताकि मैं वास्तविक प्रोजेक्ट में कुछ गलत न लिखूं। <<>>

संक्षिप्त उत्तर