程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 1.什麼是泛型和C#中泛型在Class上的實現,

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

編輯:C#入門知識

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 }

 

 

 

 

  

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved