1.什么是泛型和C#中泛型在Class上的實現


  • 閱讀目錄

     一:什么是泛型?

     二:C#中泛型在Class上的實現            

     一:什么是泛型?

    我們在編程的時候需要一個數據類型,但是在剛開始的時候還不確定這個數據類型是怎么樣的,或者說對於不同的多個數據類型有相同的功能和相同的操作,又不想多次的寫代碼,就需要用到泛型,表示同一個操作針對不同的數據類型

   二:C#中泛型在Class上的實現
    
提高了代碼的重用性
    是類型安全的,實例化整數類型new MyGenericArray<int>,不可能添加字符串類型進去
    
這個array數組可以是整數型的數組,也可以是字符串型的數組,還可以是其他數據類型的數組

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Generic
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             MyGenericArray<int> intArray = new MyGenericArray<int>(5);
14             for(int i = 0;i < 5; i++)
15             {
16                 intArray.SetItem(i, i * 5);
17             }
18             for(int i = 0;i < 5; i++)
19             {
20                 Console.WriteLine(intArray.GetItem(i) + "");
21             }
22 
23             MyGenericArray<char> charArray = new MyGenericArray<char>(5);
24             for (int i = 0; i < 5; i++)
25             {
26                 charArray.SetItem(i, (char)(i + 97));
27             }
28             for (int i = 0; i < 5; i++)
29             {
30                 Console.WriteLine(charArray.GetItem(i) + "");
31             }
32 
33             Console.ReadLine();
34         }
35     }
36 
37     class MyGenericArray<T>
38     {
39         private T[] array;
40 
41         public MyGenericArray(int size)
42         {
43             array = new T[size + 1];
44         }
45 
46         public T GetItem(int index)
47         {
48             return array[index];
49         }
50 
51         public void SetItem(int index, T value)
52         {
53             array[index] = value;
54         }
55     }
56 }

 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM