Unicode 識別子の最初の文字を特定する

JavaBeginner
オンラインで実践に進む

はじめに

この実験では、Character クラスの isUnicodeIdentifierStart(char ch) メソッドの使い方を学びます。このメソッドは、与えられた文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックします。また、isUnicodeIdentifierStart(char ch) メソッドをテストする Java プログラムを書く方法も学びます。

Java ファイルを作成する

次のコマンドを使用して、~/project ディレクトリに UnicodeIdentifierStart.java という名前の Java ファイルを作成します。

touch ~/project/UnicodeIdentifierStart.java

このコマンドは、Nano テキストエディタを開いて、UnicodeIdentifierStart.java という名前の新しい Java ファイルを作成します。

Java コードを書く

このステップでは、isUnicodeIdentifierStart(char ch) メソッドをテストする Java コードを記述します。

UnicodeIdentifierStart.java ファイルに次のコードを追加します。

import java.util.Scanner;

public class UnicodeIdentifierStart {
    public static void main(String[] args) {

        // Scanner を初期化する
        Scanner scanner = new Scanner(System.in);

        // ユーザーに入力を求める
        System.out.print("文字を入力してください:");

        // ユーザーから文字を読み取る
        char ch = scanner.next().charAt(0);

        // 文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックする
        boolean isUnicodeIdentifierStart = Character.isUnicodeIdentifierStart(ch);

        // 結果を表示する
        System.out.println("'" + ch + "'" + " は Unicode 識別子の最初の文字ですか? " + isUnicodeIdentifierStart);

        // Scanner を閉じる
        scanner.close();
    }
}

上記のコードは、ユーザーに文字を入力してもらい、入力された文字を読み取り、それが Unicode 識別子の最初の文字として許可されるかどうかをチェックし、その結果を表示します。

Java コードをコンパイルする

このステップでは、次のコマンドを使用して Java コードをコンパイルします。

javac ~/project/UnicodeIdentifierStart.java

このコマンドは、UnicodeIdentifierStart.java ファイルをコンパイルし、同じディレクトリに UnicodeIdentifierStart.class という名前のバイトコードファイルを生成します。

Java プログラムを実行する

このステップでは、次のコマンドを使用して Java プログラムを実行します。

java UnicodeIdentifierStart

このコマンドは、コンパイル済みの UnicodeIdentifierStart.class ファイルを実行し、次のメッセージを表示します。

文字を入力してください:

文字を入力すると、プログラムはそれが Unicode 識別子の最初の文字として許可されるかどうかをチェックし、その結果を表示します。

Java コードを修正する

異なる文字に対して isUnicodeIdentifierStart(char ch) メソッドをテストするために、Java コードを変更することができます。

たとえば、次のコード行を変更することができます。

char ch = scanner.next().charAt(0);

次のように:

char ch = 'ñ';

これにより、文字 'ñ' が Unicode 識別子の最初の文字として許可されるかどうかがテストされます。

Java コードを再コンパイルする

Java コードを変更した後、次のコマンドを使用して再コンパイルする必要があります。

javac ~/project/UnicodeIdentifierStart.java

このコマンドは、変更された UnicodeIdentifierStart.java ファイルを再コンパイルし、同じディレクトリに新しいバイトコードファイル UnicodeIdentifierStart.class を生成します。

Java プログラムを再実行する

Java コードを再コンパイルした後、次のコマンドを使用してプログラムを再実行する必要があります。

java UnicodeIdentifierStart

このコマンドは、新たにコンパイルされた UnicodeIdentifierStart.class ファイルを実行し、次のメッセージを表示します。

文字を入力してください:

文字を入力すると、プログラムはそれが Unicode 識別子の最初の文字として許可されるかどうかをチェックし、その結果を表示します。

複数の文字をチェックするように Java コードを修正する

ループを使用して複数の文字をチェックするために Java コードを変更することができます。たとえば、次のコードを変更することができます。

// ユーザーに入力を求める
System.out.print("Enter a character: ");

// ユーザーから文字を読み取る
char ch = scanner.next().charAt(0);

// 文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックする
boolean isUnicodeIdentifierStart = Character.isUnicodeIdentifierStart(ch);

// 結果を表示する
System.out.println("'" + ch + "'" + " is a start Unicode identifier? " + isUnicodeIdentifierStart);

次のように:

// ユーザーに入力を求める
System.out.print("Enter characters: ");

// ユーザーから入力を読み取る
String input = scanner.nextLine();

// 入力の各文字をループする
for (char ch : input.toCharArray()) {

    // 文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックする
    boolean isUnicodeIdentifierStart = Character.isUnicodeIdentifierStart(ch);

    // 結果を表示する
    System.out.println("'" + ch + "'" + " is a start Unicode identifier? " + isUnicodeIdentifierStart);
}

これにより、ユーザーに複数の文字を入力してもらい、各文字をループしてそれが Unicode 識別子の最初の文字として許可されるかどうかをチェックし、その結果を表示します。

Java プログラムを再コンパイルして再実行する

複数の文字をチェックするために Java コードを変更した後、次のコマンドを使用して再コンパイルする必要があります。

javac ~/project/UnicodeIdentifierStart.java

このコマンドは、変更された UnicodeIdentifierStart.java ファイルを再コンパイルし、同じディレクトリに新しいバイトコードファイル UnicodeIdentifierStart.class を生成します。

Java コードを再コンパイルした後、次のコマンドを使用してプログラムを再実行する必要があります。

java UnicodeIdentifierStart

このコマンドは、新たにコンパイルされた UnicodeIdentifierStart.class ファイルを実行し、次のメッセージを表示します。

文字を入力してください:

文字を入力すると、プログラムは各文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックし、その結果を表示します。

まとめ

おめでとうございます!Character クラスの isUnicodeIdentifierStart(char ch) メソッドを使用して、与えられた文字が Unicode 識別子の最初の文字として許可されるかどうかをチェックする方法を、うまく学びました。また、このメソッドをテストするための Java プログラムを書く方法も学びました。