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.



