[英]C# Enumerable Range
獲得范圍“A”...“Z”的方式是什么樣的
Enumerable.Range(1,100)
Enumerable.Range("A","Z");
為什么不保持簡單......
public static IEnumerable<char> GetAlphabet()
{
return "ABCDEFGHIJKLMNOPQRSTUVWXYZ".AsEnumerable();
}
編輯:更新以包括達林的更正......
在.NET 3.5 SP1中,這可以工作:
Enumerable.Range('A', 26).Cast<char>()
但是, Cast
的行為已針對.NET 3.5 SP1進行了更改 ,因此它現在僅對取消裝箱轉換執行引用轉換。 因此,對於.NET 3.5SP1及更高版本,您需要:
Enumerable.Range('A', 26).Select(x => (char) x);
誠然,這並不是非常好。
使用MiscUtil你可以使用
'A'.To('Z').StepChar(1)
無論你喜歡與否,都是個人品味的問題:)
Enumerable.Range('A', 26).Select(x => ((char)x).ToString())
另一種方法,如果你想從字母表的一個元素切片到另一個元素......
Enumerable.Range(0,26).Select(x => (char)((char)x + 'A'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.