Примитивы: символьный тип (char)

Тренажер по Java для пользователей с начальным уровнем подготовки.

Тренажер по Java

char — примитивный символьный тип в Java, хранит один символ в одинарных кавычках: 'A', '7', ' '. С char можно работать как с числом (коды символов): сравнивать, прибавлять смещение, приводить к int. Это часто встречается в задачах Java: обработка текста, проверка диапазонов ('a'..'z'), простые шифры. В интерактивных уроках и тренажере вы отработаете синтаксис и типичные операции.

Пример:

char c = 'A'; int x = c; // число-код

Список тем

1. Заполни пропуски: проверка диапазона символов

id: 40436_char_02_replace_range_check

Дополните фрагмент кода, чтобы он корректно проверял, является ли символ в переменной `c` строчной (маленькой) буквой английского алфавита. Для этого необходимо правильно заполнить пропуски в условии `if`, указав границы диапазона и нужный логический оператор для их объединения.

Заполните пропуски
public class CheckCharRange {
    public static void main(String[] args) {
        char c = 'g';

        // Проверяем, является ли символ строчной буквой от 'a' до 'z'
        if (c >= input1S input2S c <= input3S) {
            System.out.println("Символ '" + c + "' является строчной буквой.");
        } else {
            System.out.println("Символ '" + c + "' НЕ является строчной буквой.");
        }
    }
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

2. Что выведет код: char как число

id: 40436_char_03_predict_result_arithmetic

Проанализируйте Java-код: в нём символьная переменная `char` приводится к `int`, затем к полученному числовому коду применяются простые арифметические операции (+1 и -2). Выберите вариант, который точно соответствует тому, что будет выведено в консоль (включая переносы строк).

Выберите правильный вариант ответа
class Main {
    public static void main(String[] args) {
        char ch = 'A';
        int code = (int) ch;
        System.out.println(code);
        System.out.println(code + 1);
        System.out.println(ch + 1);
        System.out.println((int) (ch - 2));
    }
}
Сообщения
Проверить
Показать подсказку

3. Исправь кавычки для char

id: 40436_char_04_error_quotes

В этом фрагменте Java-кода допущена одна типичная ошибка при работе с символьным типом `char`: литерал символа записан неверными кавычками, из-за чего код не скомпилируется. Исправьте только одну строку так, чтобы программа успешно компилировалась и выводила символ в консоль.

Найдите ошибку и исправьте
class Main {
    public static void main(String[] args) {
        char letter = "Z";
        System.out.println(letter);
    }
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

4. Разложи значения по категориям: char / String / число

id: 40436_char_05_sort_groups_literals

Перед вами набор литералов и значений, которые в Java могут выглядеть очень похоже. Разнесите каждый элемент в одну из трёх категорий: литерал типа char, строковый литерал (String) или числовой литерал (int/число). Каждый элемент должен оказаться ровно в одной корзине — ориентируйтесь на кавычки и форму записи.

Перетяните элементы в соответствующие блоки
char-литерал
Строковый литерал (String)
Числовой литерал
'A'
"A"
65
' '
" "
'7'
"7"
0
'\n'
"\n"
-1
'0'
Сообщения
Проверить
Показать подсказку

5. Собери код: перевод символа в верхний регистр (через смещение)

id: 40436_char_06_build_from_parts_convert_case

Из предложенных строк соберите корректную Java-программу, которая берёт символ в нижнем регистре, проверяет, что он находится в диапазоне 'a'..'z', и если да — преобразует его в верхний регистр с помощью арифметики над `char` (через смещение), после чего выводит результат. Одна строка лишняя и в решение входить не должна.

Перетяните в правильном порядке строки из одного блока в другой
class Main {
    public static void main(String[] args) {
        char ch = 'g';
        if (ch >= 'a' && ch <= 'z') {
            ch = (char) (ch - ('a' - 'A'));
        }
        System.out.println(ch);
    }
}
            ch = (char) (ch + ('a' - 'A'));
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

6. Отметь все char-литералы в коде

id: 40436_char_07_click_target_char_tokens

Посмотрите на фрагмент Java-кода и выделите все символьные литералы типа `char`. Отмечайте только те значения, которые записаны в одинарных кавычках и представляют ровно один символ (в том числе пробел или escape-последовательность). Строки в двойных кавычках и числа выделять не нужно.

Кликните по всем фрагментам, которые подходят под условие задания.
class Main {
    public static void main(String[] args) {
        char a = {{'A'~|~t1}};
        String s = {{"A"~|~t2}};
        int code = {{65~|~t3}};
        char digit = {{'7'~|~t4}};
        String digitStr = {{"7"~|~t5}};
        char space = {{' '~|~t6}};
        char nl = {{'\n'~|~t7}};
        System.out.println(a);
    }
}
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру