今天遇到一個了沒見過的string數組的使用方法。遍尋網站也沒找到對應的介紹,因此先將此記錄下來若以后再翻開時希望能有所得。
先定義一個一維數組
string[] test = new string[] {"abcde","ABCDE"};
這是一個長度為2的字符串數組,包含abcde 和 ABCDE兩個元素.
通常使用時我們會通過foreach或for來遍歷數組元素
如for(int i = 0;i < test.length; i++)
{
Console.WriteLine(test[i]);
}
今天遇到的問題是這樣的。在一個switch中使用了string數組,初時覺得不可能,當我自己在編譯器中敲下同樣的代碼時發現是可以運行的。遂運行,得到如下結果
Console.WriteLine(test[0]);
Console.WriteLine(test[0][0]);

從圖中看到第一個輸出語句輸出的是字符串數組中的第一個元素。而第二個輸出語句輸出的是第一個元素中的第一個字符。由於第二種用法是寫在switch中的,所以查看一下類型

至此,發現這個字符串數組可以使用在switch中的原因。這個用法返回的類型是一個char類型。
它的長度就是string數組中的選定的元素的長度,它也同樣存在下標越界等問題。因此在這里不嚴謹的將它當成一個char數組看待。
本人是C#新手,在搜索引擎上搜索這個問題沒發現有關聯的。特此記錄下來這個用法並寫成隨筆分享出去,若有技術大佬知道這個還望不吝賜教,感謝。
