C#泛型方法约束为数组
时间: 2024-06-14 20:07:21 浏览: 294
C#泛型方法可以使用约束来限制类型参数的类型。如果要约束泛型方法的类型参数为数组类型,可以使用`where`关键字和`T[]`语法来实现。下面是一个示例:
```csharp
public void PrintArray<T>(T[] array) where T : class
{
foreach (T item in array)
{
Console.WriteLine(item);
}
}
```
在上面的示例中,`PrintArray`方法是一个泛型方法,它接受一个类型为`T[]`的数组作为参数,并使用`where`关键字和`class`约束来限制`T`必须是引用类型。这样就可以确保传入的参数是一个数组类型。
使用示例:
```csharp
string[] stringArray = { "apple", "banana", "orange" };
int[] intArray = { 1, 2, 3 };
PrintArray(stringArray); // 输出:apple banana orange
PrintArray(intArray); // 编译错误,int不满足约束
```
阅读全文