Введение
В этом практическом занятии вы научитесь использовать метод getType(int codePoint) класса Character для получения общего типа значения символа Unicode по его кодовой точке. Также вы научитесь писать и выполнять код на Java в терминале системы Ubuntu.
Настройте структуру файлов
В терминале создайте директорию с именем project, выполнив следующую команду:
mkdir project
Затем перейдите в директорию проекта:
cd project
Создайте новый файл с именем GetTypeLab.java:
touch GetTypeLab.java
Откройте файл в вашем текстовом редакторе:
touch GetTypeLab.java
Напишите код на Java
В файле GetTypeLab.java напишите следующий код на Java:
import java.util.Scanner;
public class GetTypeLab {
public static void main(String[] args) {
try {
System.out.println("Введите символ Unicode по его кодовой точке:");
Scanner sc = new Scanner(System.in);
int cp = sc.nextInt();
int type = Character.getType(cp);
switch (type) {
case Character.COMBINING_SPACING_MARK:
System.out.println("Сочетательный знак");
break;
case Character.CONNECTOR_PUNCTUATION:
System.out.println("Соединительная пунктуация");
break;
case Character.CONTROL:
System.out.println("Управляющий символ");
break;
case Character.CURRENCY_SYMBOL:
System.out.println("Валютный символ");
break;
case Character.DASH_PUNCTUATION:
System.out.println("Дефисная пунктуация");
break;
case Character.DECIMAL_DIGIT_NUMBER:
System.out.println("Десятичная цифра");
break;
case Character.ENCLOSING_MARK:
System.out.println("Заключающий знак");
break;
case Character.END_PUNCTUATION:
System.out.println("Конечная пунктуация");
break;
case Character.FINAL_QUOTE_PUNCTUATION:
System.out.println("Заключительный кавычный знак");
break;
case Character.FORMAT:
System.out.println("Формат");
break;
case Character.INITIAL_QUOTE_PUNCTUATION:
System.out.println("Начальный кавычный знак");
break;
case Character.LETTER_NUMBER:
System.out.println("Буквенно-цифровой символ");
break;
case Character.LINE_SEPARATOR:
System.out.println("Разделитель строк");
break;
case Character.LOWERCASE_LETTER:
System.out.println("Строчная буква");
break;
case Character.MATH_SYMBOL:
System.out.println("Математический символ");
break;
case Character.MODIFIER_LETTER:
System.out.println("Модифицирующая буква");
break;
case Character.MODIFIER_SYMBOL:
System.out.println("Модифицирующий символ");
break;
case Character.NON_SPACING_MARK:
System.out.println("Безотступной знак");
break;
case Character.OTHER_LETTER:
System.out.println("Другая буква");
break;
case Character.OTHER_NUMBER:
System.out.println("Другое число");
break;
case Character.OTHER_PUNCTUATION:
System.out.println("Другая пунктуация");
break;
case Character.OTHER_SYMBOL:
System.out.println("Другой символ");
break;
case Character.PARAGRAPH_SEPARATOR:
System.out.println("Разделитель абзацев");
break;
case Character.PRIVATE_USE:
System.out.println("Приватное использование");
break;
case Character.SPACE_SEPARATOR:
System.out.println("Пробельный разделитель");
break;
case Character.START_PUNCTUATION:
System.out.println("Начальная пунктуация");
break;
case Character.SURROGATE:
System.out.println("Суррогат");
break;
case Character.TITLECASE_LETTER:
System.out.println("Заглавная буква с начальным регистром");
break;
case Character.UNASSIGNED:
System.out.println("Не назначено");
break;
case Character.UPPERCASE_LETTER:
System.out.println("Заглавная буква");
break;
}
} catch (Exception e) {
System.out.println("Некорректный ввод.");
}
}
}
Код на Java запрашивает у пользователя символ Unicode по его кодовой точке, использует метод getType() для определения общего типа символа и выводит соответствующую категорию.
Компилируйте и запустите код
Скомпилируйте файл GetTypeLab.java, выполнив следующую команду:
javac GetTypeLab.java
Для запуска кода введите следующую команду:
java GetTypeLab
При появлении запроса введите символ Unicode по его кодовой точке, например, "A" (без кавычек), и нажмите Enter.
Измените код
Измените код так, чтобы вместо порядкового значения выводилось имя общего типа. Это можно сделать, заменив оператор switch следующим кодом:
String typeName = Character.getName(type);
System.out.println("Общий тип символа: " + typeName);
Скомпилируйте и запустите измененный код. Обратите внимание, как меняется вывод.
Резюме
В этом практическом занятии вы узнали, как использовать метод getType(int codePoint) класса Character в Java для определения общего типа значения символа Unicode по его кодовой точке. Вы написали код на Java в терминале системы Ubuntu и использовали класс Scanner для получения ввода от пользователя. Также вы увидели, как изменить код для вывода имени общего типа вместо его порядкового значения.



