第一步:新建C#项目(控制台应用程序)generics_5
第二步:新建一个类(Class1),在此类里编写一个泛型函数:Max<T>()
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace generics_5
{
public class Class1
{
public T Max<T>(T[]datas) where T:IComparable //定义一个泛型函数
{
T max = datas[0]; //定义一个T类型的max,并将datas[0]赋值给max
foreach (T data in datas)
{
if (max.CompareTo(data)<0) //用compareTo()函数计算出最大值
{
max = data;
}
}
return max; //返回最大值
}
}
}
第三步:主函数里的源代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace generics_5
{
class Program
{
static void Main(string[] args)
{
//定义string类型的数组data
string[] data = {"f","a","y","b","h"};
string max = new Class1().Max<string>(data);
Console.WriteLine("string: "+max);
//定义int类型的数组data2
int[] data2 = {1,2,3,19,5,7};
int max2 = new Class1().Max<int>(data2);
Console.WriteLine("int: "+max2);
//定义double类型的数组data3
double[] data3 = {5.2,6.3,3.3,12.3};
double max3 = new Class1().Max<double>(data3);
Console.WriteLine("double: "+max3);
Console.ReadKey();
}
}
}
最后输出结果如图:
|