Я новичок в работе со строками C#, меня смущает
Object.referenceEquals
Я читал какую-то статью, в которой говорится, что ReferenceEquals проверяет, является ли это тем же экземпляром или нет в программе, которую я проверяю, если object.ReferenceEquals(s1, s4), даже если они указывают на одни и те же данные, почему он оказывается ложным?
string s1 = "akhil";
string s2 = "akhil";
Console.WriteLine(object.ReferenceEquals(s1, s2)); //true
s2 = "akhil jain";
Console.WriteLine(object.ReferenceEquals(s1, s2)); //false
//Console.WriteLine(s1 == s2);
//Console.WriteLine(s1.Equals(s2));
string s3 = "akhil";
//1".Substring(0, 5);
Console.WriteLine(s3+" " +s1);
Console.WriteLine(object.ReferenceEquals(s1,s3)); //true
string s4 = "akhil1".Substring(0, 5);
Console.WriteLine(object.ReferenceEquals(s1, s4)); //confusion false why as s4 data is same as s1