はじめに
Java のCharacter
クラスのisLowSurrogate()
メソッドは、指定された文字が下位サロゲートコードユニットとして適格するかどうかをチェックするために使用されます。この実験では、isLowSurrogate()
メソッドの使い方と、実際のアプリケーションでどのように使用できるかを学びます。
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
Java のCharacter
クラスのisLowSurrogate()
メソッドは、指定された文字が下位サロゲートコードユニットとして適格するかどうかをチェックするために使用されます。この実験では、isLowSurrogate()
メソッドの使い方と、実際のアプリケーションでどのように使用できるかを学びます。
Ubuntu システムのターミナルを開き、~/project
ディレクトリに移動し、nano
エディタを使用してLowSurrogate.java
という名前の新しいファイルを作成します。
cd ~/project
touch LowSurrogate.java
このステップでは、isLowSurrogate()
メソッドの使用方法を示すコードを記述します。LowSurrogate.java
ファイルに次のコードを入力してください。
import java.util.Scanner;
public class LowSurrogate {
public static void main(String[] args) {
try {
Scanner sc = new Scanner(System.in);
System.out.print("Enter a character: ");
char ch = sc.next().charAt(0);
boolean isLow = Character.isLowSurrogate(ch);
String result = isLow? "is" : "is not";
System.out.println(ch + " " + result + " a low-surrogate.");
} catch(Exception e) {
System.out.println("Invalid input!");
}
}
}
上記のコードでは、ユーザーからの入力を取得するためにScanner
クラスをインポートしています。ユーザーから文字入力を受け取り、それをch
変数に格納します。次に、入力された文字が下位サロゲートであるかどうかを確認するためにisLowSurrogate()
メソッドを使用します。入力された文字が下位サロゲートの場合、isLow
変数はtrue
に設定され、そうでない場合はisLow
はfalse
に設定されます。
その後、三項演算子を使用して、isLow
がtrue
の場合にresult
変数を"is"に設定し、isLow
がfalse
の場合に"is not"に設定します。最後に、結果メッセージをコンソールに出力します。
変更を保存し、Ctrl+X
を押してからY
とEnter
を押すことでnano
エディタを終了します。ターミナルで次のコマンドを使用して Java コードをコンパイルします。
javac LowSurrogate.java
コンパイルが成功すると、次のコマンドを使用してコードを実行します。
java LowSurrogate
プログラムは文字の入力を促します。文字を入力してEnter
キーを押すと、それが下位サロゲートであるかどうかが表示されます。上記のコマンドを実行して毎回新しい入力を提供することで、好きな回数だけコードを実行できます。
様々な文字を入力として入力し、出力を分析することでプログラムをテストします。以下にいくつかのサンプル入力と出力を示します。
サンプル入力 1:
Enter a character: A
サンプル出力 1:
A is not a low-surrogate.
サンプル入力 2:
Enter a character: 😊
サンプル出力 2:
😊 is a low-surrogate.
サンプル入力 3:
Enter a character: \ud835
サンプル出力 3:
㌀ is not a low-surrogate.
サンプル入力 4:
Enter a character: \
サンプル出力 4:
Invalid input!
文字が下位サロゲートではなく上位サロゲートであるかどうかを確認するようにコードを変更してみましょう。そのために、メソッド呼び出しをCharacter.isLowSurrogate()
からCharacter.isHighSurrogate()
に変更し、結果メッセージもそれに応じて変更します。
Enter a character: \ud835
\ud835 is a high-surrogate.
この実験では、Java のCharacter
クラスのisLowSurrogate()
メソッドを使用して、文字が下位サロゲートコードユニットとして適格するかどうかを確認する方法を学びました。また、三項演算子を使用して、isLowSurrogate()
メソッドの出力に基づいて結果メッセージを作成する方法も学びました。最後に、異なる入力を使用してコードをテストし、上位サロゲートコードユニットを確認するようにコードを変更しました。