我想迭代字母表,如下所示:
foreach(char c in alphabet)
{
 //do something with letter
}
一组字符是最好的方法吗?(感觉很讨厌)
编辑:度量标准是"实现最少的类型,同时仍然可读且健壮"
Ric*_*lay 148
(假设ASCII等)
for (char c = 'A'; c <= 'Z'; c++)
{
    //do something with letter 
} 
或者,您可以将其拆分为提供程序并使用迭代器(如果您计划支持国际化):
public class EnglishAlphabetProvider : IAlphabetProvider
{
    public IEnumerable<char> GetAlphabet()
    {
        for (char c = 'A'; c <= 'Z'; c++)
        {
            yield return c;
        } 
    }
}
IAlphabetProvider provider = new EnglishAlphabetProvider();
foreach (char c in provider.GetAlphabet())
{
    //do something with letter 
} 
Col*_*ell 37
或者你可以做到,
string alphabet = "abcdefghijklmnopqrstuvwxyz";
foreach(char c in alphabet)
{
 //do something with letter
}
小智 8
var alphabet = Enumerable.Range(0, 26).Select(i => Convert.ToChar('A' + i));
Enumerable.Range(65, 26).Select(a => new { A = (char)(a) }).ToList().ForEach(c => Console.WriteLine(c.A));
| 归档时间: | 
 | 
| 查看次数: | 62660 次 | 
| 最近记录: |