回覆列表
  • 1 # 使用者834195712159

    一.原型

    public class InList

    {

    int[] arr = new int[10];

    int index = 0;

    public void Add(int param)

    {

    if (index >= arr.Length)

    {

    int[] tmp = new int[arr.Length * 2];

    arr.CopyTo(tmp, 0);

    arr = tmp;

    }

    arr[index] = param;

    index++;

    }

    public int this[int index]

    {

    get

    {

    if (index >= arr.Length)

    {

    throw new Exception("索引越界");

    }

    return arr[index];

    }

    }

    }

    二.泛型自定義集合

    /// <summary>

    /// 自定義泛型類集合

    /// </summary>

    /// <typeparam name="T"></typeparam>

    public class MyList<T>

    {

    T[] arr = new T[10];

    int index = 0;

    public void Add(T param)

    {

    if (index >= arr.Length)

    {

    T[] tmp = new T[arr.Length * 2];

    arr.CopyTo(tmp, 0);

    arr = tmp;

    }

    arr[index] = param;

    index++;

    }

    public T this[int index]

    {

    get

    {

    if (index >= arr.Length)

    {

    throw new Exception("索引越界");

    }

    return arr[index];

    }

    }

    }

    呼叫

    class Program

    {

    static void Main(string[] args)

    {

    //InList ilist = new InList();

    //ilist.Add(1);

    //ilist.Add(3);

    //ilist.Add(4);

    //ilist.Add(7);

    //Console.WriteLine(ilist[3]);

    //Console.ReadKey();

    MyList<int> ilist = new MyList<int>();

    ilist.Add(1);

    MyList<string> sList = new MyList<string>();

    sList.Add("1");

    //MyList1.MyList`1[System.String]

    Console.WriteLine(sList.ToString());

    Console.ReadKey();

    }

    }

  • 中秋節和大豐收的關聯?
  • 歌詞我想唱著那最美的歌謠?