zoukankan      html  css  js  c++  java
  • 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();

    }

    }

    }

     

     

  • 相关阅读:
    vue-打包为webapp,如何解决应用内跳转外部链接返回导致退出应用
    vue-引入mui.js报错如何处理
    微信小程序中-折线图
    Docker基础命令
    retry示例
    authenticate验证的流程
    django生产环境启动问题
    redis基本操作
    DBUtils数据库连接池
    外部程序调用Django模块的解决办法
  • 原文地址:https://www.cnblogs.com/ifconfig/p/13304889.html
Copyright © 2011-2022 走看看