[] 運算子 (C# 參考)
更新:2007 年 11 月
方括弧 ([]) 可用於陣列、索引子以及屬性 (Attribute)。他們也可以用於指標上。
備註
陣列型別是 [] 接在其後的型別:
int[] fib; // fib is of type int[], "array of int".
fib = new int[100]; // Create a 100-element int array.
若要存取陣列項目,便須將所需項目索引以方括弧括住。
fib[0] = fib[1] = 1;
for (int i = 2; i < 100; ++i) fib[i] = fib[i - 1] + fib[i - 2];
若陣列的索引超出範圍,便會擲回例外狀況。
陣列索引運算子不可多載,但型別仍可以定義接受一個或多個參數的索引子或屬性。索引子參數會由方括弧括住,就像陣列索引一樣。不過索引子參數可以宣告為任何型別,而不像陣列索引必須是整數型別。
例如,.NET Framework 定義了 Hashtable 型別,這個型別會使任意型別的索引鍵和值產生關聯:
System.Collections.Hashtable h = new System.Collections.Hashtable();
h["a"] = 123; // Note: using a string as the index.
方括弧也用來指定屬性 (C# 程式設計手冊):
// using System.Diagnostics;
[Conditional("DEBUG")]
void TraceMethod() {}
您可以使用方括弧來指定指標的索引:
unsafe void M()
{
int[] nums = {0,1,2,3,4,5};
fixed ( int* p = nums )
{
p[0] = p[1] = 1;
for( int i=2; i<100; ++i ) p[i] = p[i-1] + p[i-2];
}
}
不執行範圍檢查。
C# 語言規格
如需詳細資料,請參閱 C# 語言規格中的下列章節:
1.6.7.5 運算子
7.2 運算子