はじめに
Java では、Character クラスには、文字を扱うのに役立つたくさんの便利なメソッドが用意されています。その中の 1 つが isJavaIdentifierPart(int codePoint) で、指定された Unicode コードポイント文字が Java 識別子の一部であるかどうかをチェックします。
セットアップ
まず、次のコマンドを使って ~/project ディレクトリに Main.java という名前のファイルを作成します。
touch ~/project/Main.java
次に、好きなテキストエディタを使ってファイルを開きます。
touch ~/project/Main.java
文字が Java 識別子の一部であるかどうかを確認する
このステップでは、与えられた文字が Java 識別子の一部であるかどうかを確認するために、isJavaIdentifierPart メソッドを使用します。
Main.java ファイルに次のコードを追加します。
public class Main {
public static void main(String[] args) {
int codePoint = 65;
boolean isJavaIdentifierPart = Character.isJavaIdentifierPart(codePoint);
if(isJavaIdentifierPart) {
System.out.println("The character is a part of a Java identifier.");
} else {
System.out.println("The character is not a part of a Java identifier.");
}
}
}
上記のコードは、Unicode コードポイント 65 の文字が Java 識別子の一部であるかどうかを確認しています。この場合、65 は大文字の 'A' に対応します。
コードを実行するには、次のコマンドを使用します。
javac Main.java && java Main
ユーザー入力
このステップでは、Unicode コードポイントのユーザー入力を受け付けるようにコードを修正します。
Main.java ファイルの main メソッドの内容を置き換えるために、次のコードを追加します。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a Unicode code point: ");
int codePoint = scanner.nextInt();
boolean isJavaIdentifierPart = Character.isJavaIdentifierPart(codePoint);
if(isJavaIdentifierPart) {
System.out.println("The character is a part of a Java identifier.");
} else {
System.out.println("The character is not a part of a Java identifier.");
}
scanner.close();
}
上記のコードは、ユーザーに Unicode コードポイントを入力するように促し、その後、対応する文字が Java 識別子の一部であるかどうかをチェックします。
コードを実行するには、次のコマンドを使用します。
javac Main.java && java Main
さまざまな Unicode コードポイントでテストする
このステップでは、対応する文字が Java 識別子の一部であるかどうかを確認するために、さまざまな Unicode コードポイントでコードをテストします。
Main.java ファイルを実行し、isJavaIdentifierPart メソッドをテストするためにさまざまな Unicode コードポイントを入力します。
コードを実行するには、ターミナルで次のコマンドを使用します。
javac Main.java && java Main
文字列で Java 識別子の一部であるかどうかを文字で確認する
このステップでは、文字列内の文字が Java 識別子の一部であるかどうかを確認するようにコードを修正します。
Main.java ファイルの main メソッドの内容を置き換えるために、次のコードを追加します。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a string: ");
String line = scanner.nextLine();
for (int i = 0; i < line.length(); i++) {
boolean isJavaIdentifierPart = Character.isJavaIdentifierPart(line.codePointAt(i));
char c = line.charAt(i);
if(isJavaIdentifierPart) {
System.out.println("The character '" + c + "' at position " + i + " is a part of a Java identifier.");
} else {
System.out.println("The character '" + c + "' at position " + i + " is not a part of a Java identifier.");
}
}
scanner.close();
}
上記のコードは、ユーザーに文字列を入力するように促し、その後、文字列内の各文字が Java 識別子の一部であるかどうかをチェックします。
コードを実行するには、ターミナルで次のコマンドを使用します。
javac Main.java && java Main
大文字小文字の区別を無視する
このステップでは、文字が Java 識別子の一部であるかどうかをチェックする際に、大文字小文字の区別を無視するようにコードを修正します。
Main.java ファイルの main メソッドの内容を置き換えるために、次のコードを追加します。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a string: ");
String line = scanner.nextLine().toLowerCase();
for (int i = 0; i < line.length(); i++) {
boolean isJavaIdentifierPart = Character.isJavaIdentifierPart(line.codePointAt(i));
char c = line.charAt(i);
if(isJavaIdentifierPart) {
System.out.println("The character '" + c + "' at position " + i + " is a part of a Java identifier.");
} else {
System.out.println("The character '" + c + "' at position " + i + " is not a part of a Java identifier.");
}
}
scanner.close();
}
上記のコードは、ユーザー入力の文字列を小文字に変換し、その後、大文字小文字の区別を無視して、文字列内の各文字が Java 識別子の一部であるかどうかをチェックします。
コードを実行するには、ターミナルで次のコマンドを使用します。
javac Main.java && java Main
まとめ
この実験では、与えられた文字が Java 識別子の一部であるかどうかを確認するために isJavaIdentifierPart メソッドをどのように使用するかを学びました。また、ユーザー入力を受け付ける方法と、文字列内の各文字が Java 識別子の一部であるかどうかを確認する方法も学びました。最後に、文字が Java 識別子の一部であるかどうかを確認する際に大文字小文字の区別を無視する方法を見ました。



