索引器,即访问器接受参数的属性。在C#中是以数组风格的语法来公开索引器的。所以这使得对象可按照与数组相似的方式进行索引。

一,定义索引器

internal class IndexerTest<T> //generic class
    {
        //define indexer
        T[] arr1 = new T[100];
        public T this[int i]
        {
            get { return arr1[i]; }
            set { arr1[i] = value; }
        }

        //define method to display indexer's value
        public void Display()
        {
            for (int i = 0; i < arr1.Length; i++)
            {
                if (arr1[i] != null)
                {
                    Console.WriteLine(arr1[i]);
                }
            }
        }
    }

 

二,设置和调用索引器

class Program
    {
        static void Main(string[] args)
        {
            IndexerTest<string> indexer = new IndexerTest<string>();
            indexer[0] = "Mcgrady";
            indexer[1] = "Kobe";
            indexer.Display();
            Console.ReadKey();

            /*程序输出结果为:
               Mcgrady
               Kobe
             */
        }
    }

 

posted on 2012-06-28 21:51  永远的麦子  阅读(520)  评论(0编辑  收藏  举报