香蕉视频app

Keep on going never give up.

Let's Go

C# 學習筆記(26)索引器

C#Lonely2019-05-09 03:00:0051次0條

香蕉视频app當一個類包含數組成員是,索引器的使用將大大地簡化對類中數組成員的訪問。索引器的定義類似于屬性,也具有get訪問器和set訪問器,具體定義的形式如下:

[修飾符] 數據類型 this[索引類型 index]

{

    get { //返回類中數組的某個元素 }

    set { //對類中數組元素賦值}

}

其中,數據類型是類中要存取的數組的類型;索引類型表示該索引器使用哪一個類型的索引來存取數組元素,可以是整型,也可以是字符串類型;this則表示所操作的是類對象的數組成員,可以簡單地把它理解為索引器的名字(注意:索引器不能自定義名稱)。

下面代碼示例索引器的定義過程:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Student
    {
        private string[] stuArr = new string[3]; //可容納3個字符串的字符串數組
        
        public string this[int index] //索引器的定義
        {
            get
            {
                return stuArr[index];
            }
            set
            {
                stuArr[index] = value;
            }
        }
      
    }
}

以上代碼定義了一個索引器,索引器可以讓我們像訪問數組一樣訪問類中的數組成員,下面代碼示例演示了如何使用索引器:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Student stu = new Student();
            //通過索引器對類中的數組進行賦值
            stu[0] = "張三";
            stu[1] = "李四";
            stu[2] = "王五";
            Console.WriteLine(stu[0]); //輸出了張三
            Console.WriteLine(stu[1]); //輸出了李四
            Console.WriteLine(stu[2]); //輸出了王五
            Console.ReadKey();
        }
    }
}

以上代碼可以看出,索引器也是一種針對私有字段進行訪問的方式,但此時的私有字段是數組類型,而屬性則一般只對簡單數據類型的私有字段進行訪問。




暗錨,解決錨點偏移

文章評論

    嘿,來試試登錄吧!