Java の文字の空白検出を探る

JavaJavaBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Java の Character クラスの isSpaceChar(char ch) メソッドを使用して、与えられた文字が Unicode の空白文字であるかどうかを判断する方法を学びます。このメソッドの使用方法を示すために、ユーザー定義の例を使った Java コードを書きます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java(("Java")) -.-> java/ConcurrentandNetworkProgrammingGroup(["Concurrent and Network Programming"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java/BasicSyntaxGroup -.-> java/booleans("Booleans") java/BasicSyntaxGroup -.-> java/if_else("If...Else") java/BasicSyntaxGroup -.-> java/output("Output") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("User Input") java/FileandIOManagementGroup -.-> java/files("Files") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("Working") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") java/SystemandDataProcessingGroup -.-> java/system_methods("System Methods") subgraph Lab Skills java/booleans -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/if_else -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/output -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/user_input -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/files -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/working -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/string_methods -.-> lab-117545{{"Java の文字の空白検出を探る"}} java/system_methods -.-> lab-117545{{"Java の文字の空白検出を探る"}} end

プロジェクトのセットアップ

まず、~/project ディレクトリに Java プロジェクトを作成し、次のコマンドを使って SpaceCharDemo.java という新しい Java コードファイルを作成しましょう。

mkdir ~/project
cd ~/project
touch SpaceCharDemo.java

isSpaceChar(char ch) メソッドの理解

isSpaceChar(char ch) メソッドは、Java の Character クラスの組み込みメソッドです。与えられた文字が Unicode の空白文字であるかどうかをチェックするために使用できます。このメソッドは、文字の汎用カテゴリ型が次のいずれかの型の場合に true を返します。

  • SPACE_SEPARATOR
  • LINE_SEPARATOR
  • PARAGRAPH_SEPARATOR

このメソッドの構文を見てみましょう。

public static boolean isSpaceChar(char ch)

isSpaceChar(char ch) メソッドの実装

ユーザー定義の例を使って isSpaceChar(char ch) メソッドの使用方法を示す Java プログラムを実装しましょう。次のコードを SpaceCharDemo.java ファイルにコピーします。

import java.util.Scanner;

public class SpaceCharDemo {
    public static void main(String[] args) {
        // 例1
        char ch1 = 'h';
        char ch2 = '\u2028';
        char ch3 = '\u2078';
        char ch4 = '0';
        char ch5 = ' ';

        boolean b1 = Character.isSpaceChar(ch1);
        boolean b2 = Character.isSpaceChar(ch2);
        boolean b3 = Character.isSpaceChar(ch3);
        boolean b4 = Character.isSpaceChar(ch4);
        boolean b5 = Character.isSpaceChar(ch5);

        System.out.println(ch1 + " は空白文字ですか? " + b1);
        System.out.println(ch2 + " は空白文字ですか? " + b2);
        System.out.println(ch3 + " は空白文字ですか? " + b3);
        System.out.println(ch4 + " は空白文字ですか? " + b4);
        System.out.println(ch5 + " は空白文字ですか? " + b5);

        // 例2
        try {
            System.out.print("文字を入力してください: ");
            Scanner sc = new Scanner(System.in);
            char ch = sc.next().charAt(0);
            boolean b = Character.isSpaceChar(ch);
            System.out.println(ch + " は空白文字ですか? " + b);
        } catch (Exception e) {
            System.out.println("入力エラー!!");
        }
    }
}

上記のコードでは、2つの例を使って isSpaceChar(char ch) メソッドの使用方法を示しています。

最初の例では、異なる型の5つの文字を宣言し、isSpaceChar(char ch) メソッドを使って、与えられた文字が Unicode の空白文字であるかどうかを判断しました。2番目の例では、ユーザーから入力を受け取り、isSpaceChar(char ch) メソッドを使って、与えられた文字が空白文字であるかどうかを判断しました。

2番目の例では、ユーザーからの入力を取得するために Scanner クラスを使用していることに注意してください。

コードのコンパイルと実行

さて、ここで先ほど作成した Java コードをコンパイルして実行するために、次のコマンドを使いましょう。

javac SpaceCharDemo.java
java SpaceCharDemo

プログラムのテスト

上記のコードを実行すると、与えられた文字が空白文字であるかどうかを確認するための2つの例が表示されます。与えられた例の出力は以下のようになります。

h is a space character? false
​ is a space character? true
⁸ is a space character? false
0 is a space character? false
  is a space character? true
Enter a character: $
$ is a space character? false

任意の文字を入力して、それが空白文字であるかどうかを確認することができます。

まとめ

この実験では、Java の Character クラスの isSpaceChar(char ch) メソッドを使って、与えられた文字が Unicode の空白文字であるかどうかをチェックする方法を学びました。また、このメソッドの使用方法を示すために、ユーザー定義の例を使った Java プログラムを作成する方法も学びました。