C# ошибка CS1525

Рейтинг: 0Ответов: 1Опубликовано: 25.01.2023

Делаю метод который принимает на вход строку и, если первая буква не заглавная, возвращает перевернутый вариант исходной строки.

class App
{
    // BEGIN (write your solution here)
    public static string ConvertString(string word)
    {
        var check = char.IsUpper(word[0]);
        if (check == false)
        {
            return Functions.StringReverse(word);
        }
        else if (word == "")
        {
            return "";
        }
        else (check == true)
        {
            return word;
        }
    }
    // END
}

В итоге выдаёт ошибку:

(16,8): error CS1525: Unexpected symbol `{'

Что делать?

Functions.StringReverse() – переворот строки char.IsUpper() – проверка символа на верхний регистр

Ответы

▲ 0

В исправленном коде проблема не воспроизводится, однако он содержит ошибку: сначала происходит обращение к первому символу, а потом только проверка, является ли строка пустой.

Также код можно упростить при помощи тернарного оператора:

public static string ConvertString(string word)
{
    return word == "" || !char.IsUpper(word[0]) ? word : Functions.StringReverse(word);
}