[C#] возврат массива из метода ?
Привет. Я экспериментирую с возвращением массивов из метода, и у меня есть вопрос. Итак, давайте взглянем на код:
class Program { static void Main() { string[] strArr = GetNames(); strArr[0] = "Nik"; string[] strArr2 = GetNames(); Console.WriteLine("strArr[0] = {0} and strArr2[0] = {1}", strArr[0], strArr2[0]); } static string[] GetNames() { string[] ret = { "Matthew", "Mark", "Luke", "John" }; return ret; } }
Поскольку это ссылочный тип, и когда я создаю свой strarr string array и передаю ему возвращаемый массив из метода GetNames, и когда я изменяю первый элемент массива на другой, не должен ли он также изменить первый элемент в массиве метода ?
Что я уже пробовал:
Немного поэкспериментировал с ним и решил спросить Здесь.
PIEBALDconsult
Нет, строки в CLR имеют семантику типа значения - они неизменяемы.