咱們試試實現這個需求,給一個對象,而後返回 另外一個一樣的對象,先無論這個實用性,咱們實現看看
首先是int型web
private int Get(int a) { int result = a; return result; }
很好,成功實現,那若是是double型呢?微信
private double Get(double a) { double result = a; return result; }
不錯,也實現了。那若是是string類型呢?svg
private string Get(string a) { string result = a; return result; }
很贊,若是我想各個類型都實現呢?發現什麼問題了沒?網站
代碼幾乎是同樣的,怎麼能更簡便呢?spa
若是有個類型,能夠暫時替代全部類型,待程序運行時自動根據參數解析來變成指定類型(重讀3遍)code
咱們叫它通用類型 ,用個字母表明它 ,T
(Tong),而後使用<T>
來告訴這個方法,這個T是通用類型。
而後咱們的代碼就變成下面這樣。xml
private T Get<T>(T a) { T result = a; return result; }
咱們在主方法內調用試試對象
using System; namespace ConsoleApp1 { class Program { static void Main(string[] args) { var result = Get(1); var result2 = Get(1d); var result3 = Get("3"); Console.WriteLine(result); Console.WriteLine(result2); Console.WriteLine(result3); } private static T Get<T>(T a) { T result = a; return result; } } }
輸出結果:
blog
成功實現!token
本人不是大佬,只是道路先行者,在落河後,向後來的人大喊一聲,這裏有坑,不要過來啊!
縱然如此,依舊有人重複着落河,重複着吶喊······
我的博客網站 Blog
文章後續會在公衆號更新,微信搜索 OneByOneDotNet 便可關注。
你的一分鼓勵,個人十分動力,點贊免費,感恩回饋。喜歡就點贊評論吧,雙擊6666~