Как узнать следующий символ по алфавиту? - PullRequest
23 голосов
/ 22 июня 2009

Как мы можем узнать следующий символ введенного. Например, если я ввел символ «b», то как мне получить ответ «c»?

Ответы [ 9 ]

36 голосов
/ 22 июня 2009

Попробуйте это:

char letter = 'c';

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

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

Таким образом, у вас нет проблем, когда символ является последним из алфавита.

14 голосов
/ 22 июня 2009

Как насчет:

char first = 'c';
char nextChar = (char)((int) first + 1);
5 голосов
/ 09 августа 2014

Обратите внимание, что char неявно приведёт к int.Вот упрощенное решение:

char incrementCharacter(char input)
{
    return (input == 'z'? 'a': (char)(input + 1));
}
2 голосов
/ 22 июня 2009

Пожалуй, самый простой способ - это маленькая функция и массив из 26 символов. Затем вы можете решить, что вы хотите вернуть за «z».

1 голос
/ 22 июня 2009

Преобразовать символ в число, увеличить число и затем преобразовать обратно.

Но подумайте о том, что произойдет для "z" или "á" (латинский Small Leter A с острым).

0 голосов
/ 20 июня 2018

Попробуйте это:

public string GetNextAlphabetLetter(int indice) {
  return ((char)('A' + indice)).ToString();
}
0 голосов
/ 12 декабря 2016

Это значение изменения полезно для приложения Excel, чтобы найти предыдущий столбец

открытая статическая строка PrevExecelColumn (строка s) { s = s.ToUpper (); char [] ac = s.ToCharArray (); int ln = ac.Length; для (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;
    }  
0 голосов
/ 03 сентября 2009

Как сортировать? В немецком (я думаю) это должно сортироваться после a, но в шведском это должно следовать после å, которое в свою очередь идет после z Это не тривиальный вопрос, если вы не ограничиваетесь английским языком.

0 голосов
/ 22 июня 2009

нужно просто добавить 1 символ, чтобы получить следующий символ. Работает со значениями ASCII.

...