泛型方法是一種可以在定義時不指定具體類型,在調用時指定具體類型的方法。在 C# 中使用泛型方法可以提高代碼的重用性和靈活性。
下面是一個簡單的示例,演示如何實現和使用泛型方法:
using System;
public class GenericMethodDemo
{
// 定義一個泛型方法,可以接受任意類型的參數
public T GetMax<T>(T a, T b) where T : IComparable
{
return a.CompareTo(b) > 0 ? a : b;
}
// 定義一個泛型方法,可以接受任意類型的參數
public void PrintMessage<T>(T message)
{
Console.WriteLine(message);
}
}
class Program
{
static void Main()
{
GenericMethodDemo demo = new GenericMethodDemo();
// 調用 GetMax 方法并指定類型為 int
int maxInt = demo.GetMax<int>(10, 20);
Console.WriteLine($"Max Int: {maxInt}");
// 調用 GetMax 方法并指定類型為 double
double maxDouble = demo.GetMax<double>(3.14, 2.5);
Console.WriteLine($"Max Double: {maxDouble}");
// 調用 PrintMessage 方法并傳入字符串參數
demo.PrintMessage<string>("Hello, World!");
// 調用 PrintMessage 方法并傳入整數參數
demo.PrintMessage<int>(123);
}
}
在上面的示例中,GenericMethodDemo 類中定義了兩個泛型方法 GetMax 和 PrintMessage。在 Main 方法中,我們分別調用了這兩個泛型方法,并指定了具體的類型參數。
通過泛型方法,我們可以實現一個通用的方法,可以接受任意類型的參數,并且在調用時指定具體的類型,實現更加靈活和通用的代碼編寫。