我不确定这是否可行。我使用一个接受参数int的方法,但我发现自己处于需要能够使用浮点值的情况。有没有人知道是否有改变预定义方法可以采取的参数?
全部谢谢 最好 亚历克斯
答案 0 :(得分:0)
C#有他的要求类型的泛型,你想要应用一个与参数输入类型无关的逻辑
例如:
T foo<T>(T param)
{
return param + 1;
}
//and it can be used like this
int i;
foo<int>(i); // return type is int
float f;
foo<float>(f); // return type is float
答案 1 :(得分:0)
您可以按如下方式重载方法:
public static float myMethod(float sumNumber)
{
// whatever you need for code here
return sumNumber;
}
public static int myMethod(int sumNumber)
{
// whatever you need for code here
return sumNumber;
}
答案 2 :(得分:0)
成员重载意味着在同一类型上创建两个或多个成员,这些成员仅在参数的数量或类型上有所不同,但具有相同的名称。 - Microsoft MSDN
// your method
public static double Inc(int i)
{
return i + 1;
}
// your method (overloaded)
public static double Inc(double d)
{
return d + 1;
}
int i = Inc(3);
double d = Inc(2.0); // You can use the same method with different parameter types
网站www.dotnetperls.com有很多很好的例子。如果您想查看MSDN以外的其他说明,可以阅读this。
答案 3 :(得分:0)
您可以为此类方法定义泛型类。
public class GenericMethodsClass<T>
{
public static T myMethod(T sumNumber)
{
// whatever you need for code here
return sumNumber;
}
}
通话:
GenericMethodsClass<int>.myMethod(1);
GenericMethodsClass<double>.myMethod(1.2);