索引指示器(indexer)使得可以像陣列那樣對物件使用下標,它為我們提供了通過索引方式方便的訪問類的資料資訊的方法
一對{}之間是索引指示器的訪問宣告,使用get,和set關鍵字定義對被索引元素的讀寫許可權
案例
class team
{
string[] s_name=new string[8];
public string this[int nindex]
{
get
{
return s_name[nindex];
}
set
{
s_name[nindex]=value;
}
}
}
class test
{
static void Main()
{
team t1 = new team();
for(int i=0;i<=7;i++)
{
t1[i]=i.ToString();
}
for(int i=0;i<=7;i++)
{
if(t1[i]!=null)
{
Console.WriteLine(t1[i]);
}
else
{
Console.WriteLine("no");
}
}
}
}
{
string[] s_name=new string[8];
public string this[int nindex]
{
get
{
return s_name[nindex];
}
set
{
s_name[nindex]=value;
}
}
}
class test
{
static void Main()
{
team t1 = new team();
for(int i=0;i<=7;i++)
{
t1[i]=i.ToString();
}
for(int i=0;i<=7;i++)
{
if(t1[i]!=null)
{
Console.WriteLine(t1[i]);
}
else
{
Console.WriteLine("no");
}
}
}
}
在許多情況下,某些資料資訊應該屬於類或類例項私有的,需要限制對這些資訊的訪問,而又不希望完全對外封閉,和屬性一樣,索引指示器為我們提供了控制訪問許可權的另一種方式