Método Java Character GetType Codepoint

JavaBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como usar o método Java getType(int codePoint) da classe Character para obter a categoria geral de um valor de caractere codepoint Unicode. Você também aprenderá como escrever e executar código Java no terminal do sistema Ubuntu.

Configurar a estrutura de arquivos

No terminal, crie um diretório chamado project executando o seguinte comando:

mkdir project

Em seguida, navegue até o diretório do projeto:

cd project

Crie um novo arquivo chamado GetTypeLab.java:

touch GetTypeLab.java

Abra o arquivo com seu editor de texto:

touch GetTypeLab.java

Escrever o código Java

No arquivo GetTypeLab.java, escreva o seguinte código Java:

import java.util.Scanner;

public class GetTypeLab {
    public static void main(String[] args) {
        try {
            System.out.println("Enter the Unicode codepoint character:");
            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("Combining Spacing Mark");
                    break;
                case Character.CONNECTOR_PUNCTUATION:
                    System.out.println("Connector Punctuation");
                    break;
                case Character.CONTROL:
                    System.out.println("Control");
                    break;
                case Character.CURRENCY_SYMBOL:
                    System.out.println("Currency Symbol");
                    break;
                case Character.DASH_PUNCTUATION:
                    System.out.println("Dash Punctuation");
                    break;
                case Character.DECIMAL_DIGIT_NUMBER:
                    System.out.println("Decimal Digit Number");
                    break;
                case Character.ENCLOSING_MARK:
                    System.out.println("Enclosing Mark");
                    break;
                case Character.END_PUNCTUATION:
                    System.out.println("End Punctuation");
                    break;
                case Character.FINAL_QUOTE_PUNCTUATION:
                    System.out.println("Final Quote Punctuation");
                    break;
                case Character.FORMAT:
                    System.out.println("Format");
                    break;
                case Character.INITIAL_QUOTE_PUNCTUATION:
                    System.out.println("Initial Quote Punctuation");
                    break;
                case Character.LETTER_NUMBER:
                    System.out.println("Letter Number");
                    break;
                case Character.LINE_SEPARATOR:
                    System.out.println("Line Separator");
                    break;
                case Character.LOWERCASE_LETTER:
                    System.out.println("Lowercase Letter");
                    break;
                case Character.MATH_SYMBOL:
                    System.out.println("Math Symbol");
                    break;
                case Character.MODIFIER_LETTER:
                    System.out.println("Modifier Letter");
                    break;
                case Character.MODIFIER_SYMBOL:
                    System.out.println("Modifier Symbol");
                    break;
                case Character.NON_SPACING_MARK:
                    System.out.println("Non-Spacing Mark");
                    break;
                case Character.OTHER_LETTER:
                    System.out.println("Other Letter");
                    break;
                case Character.OTHER_NUMBER:
                    System.out.println("Other Number");
                    break;
                case Character.OTHER_PUNCTUATION:
                    System.out.println("Other Punctuation");
                    break;
                case Character.OTHER_SYMBOL:
                    System.out.println("Other Symbol");
                    break;
                case Character.PARAGRAPH_SEPARATOR:
                    System.out.println("Paragraph Separator");
                    break;
                case Character.PRIVATE_USE:
                    System.out.println("Private Use");
                    break;
                case Character.SPACE_SEPARATOR:
                    System.out.println("Space Separator");
                    break;
                case Character.START_PUNCTUATION:
                    System.out.println("Start Punctuation");
                    break;
                case Character.SURROGATE:
                    System.out.println("Surrogate");
                    break;
                case Character.TITLECASE_LETTER:
                    System.out.println("Titlecase Letter");
                    break;
                case Character.UNASSIGNED:
                    System.out.println("Unassigned");
                    break;
                case Character.UPPERCASE_LETTER:
                    System.out.println("Uppercase Letter");
                    break;
            }
        } catch (Exception e) {
            System.out.println("Invalid input.");
        }
    }
}

O código Java solicita ao usuário que insira um caractere codepoint Unicode, usa o método getType() para obter a categoria geral do caractere e imprime a categoria correspondente.

Compilar e executar o código

Compile o arquivo GetTypeLab.java executando o seguinte comando:

javac GetTypeLab.java

Para executar o código, insira o seguinte comando:

java GetTypeLab

Quando solicitado, insira um caractere codepoint Unicode, como "A" (sem aspas), e pressione Enter.

Modificar o código

Modifique o código para imprimir o nome da categoria geral em vez de seu valor ordinal. Você pode conseguir isso substituindo a instrução switch pelo seguinte código:

String typeName = Character.getName(type);
System.out.println("The character's general category is: " + typeName);

Compile e execute o código modificado. Observe como a saída muda.

Resumo

Neste laboratório, você aprendeu como usar o método Java getType(int codePoint) da classe Character para obter a categoria geral de um valor de caractere codepoint Unicode. Você escreveu código Java no terminal do sistema Ubuntu e usou a classe Scanner para obter entrada do usuário. Você também viu como modificar o código para imprimir o nome da categoria geral em vez de seu valor ordinal.