• C#泛型学习


    泛型是泛+型,目的是为了节省代码的重复,可以复用代码。

    场景:

    定义了两个方法(函数)

    public int DisplayMyInteger(int myInt)

    {

    return myInt;

    }

     

    public string DisplayMyString(string myStr)

    {

    return myStr;

    }

    上面如果最终调用函数

    DisplayMyInteger(2.5),就会报错,原因就是2.5并不是整型int

    所以现在的思路就是要把这两个方法做成通用型。是除了 int,string的变量类型之外,函数结构和样子都几乎一样。所以发明了"泛型"

    英文单词Generic Programming,查看百度翻译:

     

    using System;

     

    namespace GenericDemo

    {

    class GenericClassDemo<T>

    {

    public T Display(T value)

    {

    return value;

    }

    }

    class Program

    {

    static void Main(string[] args)

    {

    GenericClassDemo<int> a = new GenericClassDemo<int>();

    Console.WriteLine($"{a.Display(10086)}");

    GenericClassDemo<string> b = new GenericClassDemo<string>();

    Console.WriteLine($"{b.Display("I love China!")}");

    GenericClassDemo<double> c = new GenericClassDemo<double>();

    Console.WriteLine($"{c.Display(Math.PI)}");

    }

    }

    }

    场景:

    using System;

    using System.Collections;

     

    namespace NonGenericDemo

    {

    class Program

    {

    static void Main(string[] args)

    {

    ArrayList myList = new ArrayList();

    myList.Add(1);

    myList.Add(2);

    myList.Add("I love China!");

    foreach (int a in myList)

    {

    Console.WriteLine((int)a);

    }

    Console.ReadKey();

    }

    }

    }

     

     

  • 相关阅读:
    python 10大算法之一 LinearRegression 笔记
    Android+openCV 动态人脸检测
    ubuntu+github配置使用
    Android+openCV人脸检测2(静态图片)
    Android CameraManager 类
    Android人脸检测1(静态图片)
    Android读写配置2
    Git分支(branch)
    mvn
    git 停止跟踪某一个文件
  • 原文地址:https://www.cnblogs.com/ifconfig/p/13304889.html
Copyright © 2020-2023  润新知