Javaで空白文字を判定する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaで空白文字を判定する方法について解説しています。最初に空白文字とはどういう状態のことを指すかについて学びます。次にequalsメソッド、isEmptyメソッド、lengthメソッドを使った3つの方法で実際に空白文字の判定を行います。それぞれの基本の書き方と処理の流れを確認しましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

Javaで空白文字を判定する方法について解説します。実際にプログラムを書いて説明しているので、ぜひ理解しておきましょう。

 

なお本記事は、TechAcademyのJava講座の内容をもとに作成しています。

 

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

空白文字を判定する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

空白文字とは

プログラミングにおいて空白文字とは、長さが0の文字列のことを指します。「」←この括弧の内容が空白文字です。

「 」や「 」は半角スペース、および全角スペースであり、空白文字とは別のものです。Javaでは文字列をダブルクォーテーションで囲って示しますので、空白文字は””と表すことができます。

String str = "";

尚、一文字のデータは下記のように基本データ型であるchar型に格納できます。

char c = 'あ';

しかし同様に空白文字をシングルクォーテーションで囲って代入する処理を記述すると、コンパイルエラーとなります。

char c = '' //コンパイルエラー

空白文字は1文字ではない為です。

 

Javaで空白文字を判定する方法

Stringクラスのメソッドを使って空白文字を判定する方法を3つご紹介します。

一つ目は、equalsメソッドを使う方法です。比較対象として別の空白文字を与え、結果がtrueであれば空白文字と判定することができます。

二つ目はisEmptyメソッドを使う方法です。isEmptyメソッドは文字列の長さが0であればtrueを返すので、結果がtrueであれば空白文字と判定できます。

尚、isEmptyメソッドは内部的に次に照会するlengthメソッドを呼び出しています。

三つ目はlengthメソッドを使う方法です。lengthメソッドは文字列の長さをint型で返却しますので、返却値が0であれば空白文字と判定できます。

 

[PR] Javaで挫折しない学習方法を動画で公開中

実際に書いてみよう

上記の3つの方法で判定処理を実装します。

 

public class Sample {

  public static void main(String[] args) {

    // 空白文字を代入したString型変数
    String str = "";

    System.out.print("equalsメソッドで判定→");
    if ("".equals(str)) {

    System.out.println("strは空白文字");
    } else {
    System.out.println("strは空白文字でない");
    }

    System.out.print("isEmptyメソッドで判定→");
    if (str.isEmpty()) {

    System.out.println("strは空白文字");
    } else {
    System.out.println("strは空白文字でない");
    }

    System.out.print("lengthメソッドで判定→");
    if (str.length() == 0) {

    System.out.println("strは空白文字");
    } else {
    System.out.println("strは空白文字でない");
    }

  }

}

実行結果は

equalsメソッドで判定→strは空白文字
isEmptyメソッドで判定→strは空白文字
lengthメソッドで判定→strは空白文字

となります。

 

監修してくれたメンター

長屋雅美

独立系SIerで7年勤務後、現在はフリーのエンジニアとして自宅をオフィスとして活動しています。
JavaやC♯、shellscriptを用いた開発を主に担当し、TechAcademyではJavaコースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

オンラインのプログラミングスクールTechAcademyでは、Java講座を開催しています。

JavaやServletの技術を使ってWebアプリケーションの開発を学ぶことができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。