不能调用具有不同数量(3、4或5)参数的函数
本文关键字:函数 参数 调用 不能 | 更新日期: 2023-09-27 18:17:13
此逻辑程序的目标是,如果数字数组中的第一个数字或最后一个数字为6,则返回true,否则返回false。我的逻辑都很好,但我不明白为什么它不能编译。
我得到的错误
错误1没有重载方法'FirstLast6'有3个参数
方法'FirstLast6'有4个参数
没有重载没有重载方法'FirstLast6'有5个参数
static void Main(string[] args)
{
FirstLast6(1, 2, 6); // -> true
FirstLast6(6, 1, 2, 3); // -> true
FirstLast6(13, 6, 1, 2, 3); // -> false
}
public static bool FirstLast6(int[] numbers)
{
if (numbers[0] == 6 || numbers[numbers.Length - 1] == 6)
{
return true;
}
else
{
return false;
}
}
考虑使用params
关键字:
public static bool FirstLast6(params int[] numbers)
使用params
来接受任意数量的与数组类型相同的参数。
public static bool FirstLast6(params int[] numbers)
{
这样,你将不需要手动创建一个数组(例如:FirstLast6(new int[] { 1, 2, 6 });
),如果你试图传递x数量的数字到你的方法,
您没有正确地将参数传递给该方法。用数组arg调用它,像这样:
FirstLast6(new int[] { 1, 2, 6 });
同样的事情也适用于其他两个调用。