C#泛型(Generic)各种数据类型求最大值

第一步:新建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();
        }


    }
}

最后输出结果如图:
图片

















评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值