Question

Comment pouvons-nous trouver le prochain caractère du caractère saisi? Par exemple, si j’ai saisi le caractère " b " alors comment puis-je obtenir la réponse "c"?

Était-ce utile?

La solution

Essayez ceci:

char letter = 'c';

if (letter == 'z')
    nextChar = 'a';
else if (letter == 'Z')
    nextChar = 'A';

else
    nextChar = (char)(((int)letter) + 1);

Ainsi, vous n'avez aucun problème lorsque le caractère est le dernier de l'alphabet.

Autres conseils

Que diriez-vous de:

char first = 'c';
char nextChar = (char)((int) first + 1);

Notez qu'un caractère sera implicitement converti en un entier. Voici une solution simplifiée:

char incrementCharacter(char input)
{
    return (input == 'z'? 'a': (char)(input + 1));
}

Le moyen le plus simple est peut-être une petite fonction et un tableau des 26 caractères. Ensuite, vous pouvez décider de ce que vous voulez retourner pour 'z'.

Convertissez le caractère en nombre, incrémentez-le puis reconvertissez-le.

Mais considérez ce qui se passera pour & z; z " ou & amp; " (Petit latin Leter A avec aigu).

devez simplement ajouter 1 caractère pour obtenir le caractère suivant. Cela fonctionne sur les valeurs ASCII.

Comment & # 228; Trier? En allemand (je pense), il devrait être classé après a, mais en suédois, il devrait être placé après & # 229 ;, après z. Ce n'est pas une question triviale, à moins que vous ne vous limitiez à l'anglais.

Cette valeur de modification utile pour l'application Excel pour rechercher la colonne précédente

chaîne statique publique PrevExecelColumn (string s)         {             s = s.ToUpper ();             char [] ac = s.ToCharArray ();             int ln = ac.Length;             pour (int i = ln - 1; i > -1; i--)             {                 char c = ac [i];

            if (c == 'A')
            {
                ac[i] = 'Z';
                continue;
            }

            ac[i] = (char)(((int)ac[i]) - 1);
            break;

        }
        s = new string(ac);
        return s;
    }  

Essayez ceci:

public string GetNextAlphabetLetter(int indice) {
  return ((char)('A' + indice)).ToString();
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top