W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
索引器提供了一個(gè)類(lèi)似數(shù)組的語(yǔ)法來(lái)訪問(wèn)類(lèi)或結(jié)構(gòu)中的元素。
索引器與屬性類(lèi)似,但可通過(guò)索引參數(shù)訪問(wèn),而不是屬性名稱(chēng)。
字符串類(lèi)有一個(gè)索引器,它允許您通過(guò)int索引訪問(wèn)其每個(gè)char值:
string s = "hello";
Console.WriteLine (s[0]); // "h"
Console.WriteLine (s[3]); // "l"
使用索引器的語(yǔ)法與使用數(shù)組的語(yǔ)法相似,除了index參數(shù)可以是任何類(lèi)型。
索引器具有與屬性相同的修飾符。
要編寫(xiě)索引器,請(qǐng)定義一個(gè)名為this的屬性,在方括號(hào)中指定參數(shù)。
例如:
class MyWord {
string[] words = "this is a test".Split();
public string this [int wordNum] // indexer
{
get {
return words [wordNum];
}
set {
words [wordNum] = value;
}
}
}
以下是我們?nèi)绾问褂么怂饕鳎?br />
MyWord s = new MyWord();
Console.WriteLine (s[3]);
s[3] = "CSS";
Console.WriteLine (s[3]); // CSS
類(lèi)型可以聲明多個(gè)索引器,每個(gè)索引器具有不同類(lèi)型的參數(shù)。
索引器也可以采用多個(gè)參數(shù):
public string this [int arg1, string arg2] {
get { ... } set { ... }
}
如果省略set存取器,索引器將變?yōu)橹蛔x。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: