Дан следующий метод:
static void Display(params int[] numbers) { int result = 0; for (int i = 0; i < numbers.Length; i++) { result += numbers[i]; } Console.WriteLine(result); }
Какие из следующих вариантов представляют правильный способ вызова данного метода (правильных вариантов может быть несколько):
Display();
Display(1);
Display(1, 2);
Display(1, 2, 3);
Display(new int[] { 1, 2, 3 });
Все предложенные выше варианты представляют корректный вызов метода Display.
Дан следующий метод:
static void Display(int[] numbers) { int result = 0; for (int i = 0; i < numbers.Length; i++) { result += numbers[i]; } Console.WriteLine(result); }
Какие из следующих вариантов представляют правильный способ вызова данного метода (правильных вариантов может быть несколько):
Display();
Display(1);
Display(1, 2);
Display(1, 2, 3);
Display(new int[] { 1, 2, 3 });
Корректный вызов метода Display представляет только один вариант: Display(new int[] { 1, 2, 3 });
.
Какой будет результат выполнения следующей программы и почему:
using System; namespace HelloApp { class Program { static void Main(string[] args) { Display(1, 3, 4, 2); Console.ReadKey(); } static void Display(params int[] numbers, int r) { int result = 0; for (int i = 0; i < numbers.Length; i++) { result += numbers[i]; } result *= r; Console.WriteLine(result); } } }
Программа не скомпилируется, потому что в методе Display после параметра с ключевым словом params определен еще один параметр.