C#. Методы с переменным количеством параметров
Ключевое слово params
Эта статья носит скорее академический характер. В ней рассматривается использование ключевого слова params в списке аргументов методов. Для чего же нужно это ключевое слово? Да для тех случаев, когда мы ходим создать метод с переменным количеством однотипных параметров. Например, в одном случае нам нужно вызвать один метод с двумя аргументами, а в другой раз с тремя, в следующий раз с десятью. В C# эта задача решается очень просто! Создадим такой метод, который будет принимать гибкий список целочисленных параметров, а потом просто складывать из все, а результат возвращать вызывающему коду:
//Принимает гибкий список параметров, суммирует их и возвращает результат static int Sum(params int[] aValues) { //Для хранения результата int result = 0; //Перебор всех элементов от первого до последнего foreach (int tmpValue in aValues) { //Добавить текущее значение к результату result += tmpValue; } //Вернуть результат return result; }
Как видите, список аргументов воспринимается внутри метода как массив, и работать с ним можно как с обычным массивом, но все «прелести» такого подхода становятся видны во использования (вызова) метода:
//Использовать метод можно так int firstResult = Sum(2, 5, 6); //Или так int secondResult = Sum(2, 5, 6, 4, 2, 8); //Или даже так int otherResult = Sum();
А теперь на чистоту! Во время написания этой статьи, я ловил себя на мысли, что ни разу в реальной практике не создавал методы с использованием ключевого слова params, просто не было такой необходимости… Но Вам эта информация может пригодиться, хотя бы для того, чтобы понять что происходит, если вдруг встретите использование такого подхода в чужом коде!
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.