C#學習 [型別系統] 泛型(16)

huiy_小溪發表於2024-10-30

使用場景

在編譯時可以不指定具體型別,在具體使用時指定,從而程式碼具有較高的通用性。

示例程式碼

  1. 定義
public class GenericTest<T>
{
    T[] array;

    public GenericTest(int size)
    {
        array = new T[size];
    }

    public T get(int index)
    {
        return array[index];
    }

    public void set(int index, T value)
    {
        array[index] = value;
    }
}

  1. 使用
public class MyGenericTest
{
    public static void main(String[] args)
    {
        var size = 6;
        GenericTest<String> t = new GenericTest<String>(size);
        for (int i = 0; i < size; i++)
        {
            //  t.set(i, Convert.ToString(i));
            t.set(i, i.ToString());
        }
        for (int i = 0; i < size; i++)
        {
            Console.WriteLine(t.get(i));
        }
    }
}

相關文章