Quickest way to enumerate the alphabet

后端 未结 7 693
猫巷女王i
猫巷女王i 2020-11-29 02:15

I want to iterate over the alphabet like so:

foreach(char c in alphabet)
{
 //do something with letter
}

Is an array of chars the best way

7条回答
  •  孤城傲影
    2020-11-29 02:35

    (Assumes ASCII, etc)

    for (char c = 'A'; c <= 'Z'; c++)
    {
        //do something with letter 
    } 
    

    Alternatively, you could split it out to a provider and use an iterator (if you're planning on supporting internationalisation):

    public class EnglishAlphabetProvider : IAlphabetProvider
    {
        public IEnumerable 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 
    } 
    

提交回复
热议问题