Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csPmCfML 318 of 436 menu
◀ ▶

Изменение списка в функции в C#

Параметр List<int> ссылается на тот же список. Метод Add внутри функции удлиняет список, и вызывающий код видит новый элемент:

Запишем функцию, которая дописывает число в конец списка, и выведем последний элемент после вызова:

void AppendTail(List<int> nums) { nums.Add(99); } List<int> data = [1, 2]; AppendTail(data); Console.WriteLine(data[data.Count - 1]); // prints 99

Если параметру присвоить новый список, внешняя переменная останется прежней:

void Replace(List<int> nums) { nums = [7, 8]; } List<int> data = [1, 2]; Replace(data); Console.WriteLine(data.Count); // prints 2

Исправьте код так, чтобы новый элемент был виден снаружи функции:

void AddZero(List<int> nums) { nums = [4, 5, 0]; } List<int> data = [4, 5]; AddZero(data); Console.WriteLine(data[data.Count - 1]);

Исправьте код так, чтобы новый элемент был виден снаружи функции:

void PushTag(List<string> tags) { tags = ["a", "b", "end"]; } List<string> tags = ["a", "b"]; PushTag(tags); Console.WriteLine(tags[tags.Count - 1]);
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить