Для того, что бы метод принимал произвольное количество аргументов, применяется ключевое слово params.
Дополнительные параметры не указываются.
Дополнительные параметры не указываются.
Синтаксис:
params тип[] имя_массива
params тип[] имя_массива
Main.cs
usingSystem;classOne {-
publicdecimalAdd(paramsdecimal[] args) { -
decimalres=0; -
for(inti=0; i<args.Length; i++) { -
res+=args[i]; -
} -
returnres; -
} }classTwo {-
decimalval; -
publicTwo(decimalarg) { -
val = arg; -
} -
/*неявное (автоматическое) преобразование из типа Two в тип decimal -
объекты будут складываться, как значения типа decimal*/ -
publicstaticimplicitoperatordecimal(Two obj) { -
returnobj.val; -
} }classProgram {-
publicstaticintMain() { -
One O =newOne(); -
//передача аргументов в виде значений, разделенных запятыми -
Console.WriteLine(O.Add(1,2,3,4,5,6,7,8,9)); -
decimal[] arra =newdecimal[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -
//передача аргументов в виде массива -
Console.WriteLine(O.Add(arra)); -
Two T =newTwo(5); -
//передача аргументов в виде преобразованных объектов в тип decimal -
Console.WriteLine(O.Add(T,T,T,T,T)); -
Console.ReadKey(); -
return0; -
} }
usingSystem;classOne {-
publicdecimalAdd(paramsdecimal[] args) { -
decimalres=0; -
for(inti=0; i<args.Length; i++) { -
res+=args[i]; -
} -
returnres; -
} }classTwo {-
decimalval; -
publicTwo(decimalarg) { -
val = arg; -
} -
/*неявное (автоматическое) преобразование из типа Two в тип decimal -
объекты будут складываться, как значения типа decimal*/ -
publicstaticimplicitoperatordecimal(Two obj) { -
returnobj.val; -
} }classProgram {-
publicstaticintMain() { -
One O =newOne(); -
//передача аргументов в виде значений, разделенных запятыми -
Console.WriteLine(O.Add(1,2,3,4,5,6,7,8,9)); -
decimal[] arra =newdecimal[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; -
//передача аргументов в виде массива -
Console.WriteLine(O.Add(arra)); -
Two T =newTwo(5); -
//передача аргументов в виде преобразованных объектов в тип decimal -
Console.WriteLine(O.Add(T,T,T,T,T)); -
Console.ReadKey(); -
return0; -
} }
45
45
25
45
25