カテゴリ: Java 更新日: 2025/06/03

JavaのStringクラスとendsWithメソッドを完全解説!初心者でも理解できる文字列の末尾チェック

endsWithメソッド
endsWithメソッド

先生と生徒の会話形式で理解しよう

生徒

「Javaで文字列が特定の文字列で終わっているかどうかを確認する方法はありますか?」

先生

「はい、JavaではStringクラスのendsWithメソッドを使うと、特定の文字列で終わっているかを簡単に確認できます。」

生徒

「それは便利ですね!どのように使うんですか?」

先生

「では、基本的な使い方を詳しく見ていきましょう!」

1. JavaのStringクラスとは?

1. JavaのStringクラスとは?
1. JavaのStringクラスとは?

JavaのStringクラスは、テキストデータを扱うための基本的なクラスです。文字列はプログラミングで頻繁に使用されるデータ型であり、Stringクラスにはさまざまな文字列操作メソッドが用意されています。

Stringクラスは不変(immutable)で、一度作成された文字列の内容を変更することはできません。そのため、新しい文字列を操作する際には、元の文字列を基にした新しい文字列が生成されます。

2. endsWithメソッドの使い方

2. endsWithメソッドの使い方
2. endsWithメソッドの使い方

endsWithメソッドは、文字列が指定された文字列で終わっているかどうかを判定するメソッドです。このメソッドの構文は以下の通りです。

  • public boolean endsWith(String suffix)

このメソッドはtrueまたはfalseを返します。以下に基本的な使用例を示します。


public class EndsWithExample {
    public static void main(String[] args) {
        String filename = "example.txt";
        boolean result = filename.endsWith(".txt");
        System.out.println("このファイルはテキストファイルですか?: " + result);
    }
}

このプログラムを実行すると、以下の結果が表示されます。


このファイルはテキストファイルですか?: true

このように、endsWithメソッドを使用することで、文字列の末尾を簡単に確認できます。

3. endsWithメソッドを使うときの注意点

3. endsWithメソッドを使うときの注意点
3. endsWithメソッドを使うときの注意点

endsWithメソッドを使用する際には、以下の点に注意してください。

  • 引数suffixにはnullを渡さないでください。NullPointerExceptionが発生します。
  • 大文字と小文字が区別されます。suffixが正確に一致している必要があります。

安全に使用するための例を示します。


public class SafeEndsWithExample {
    public static void main(String[] args) {
        String url = "https://example.com";
        String suffix = ".com";

        if (suffix != null && url.endsWith(suffix)) {
            System.out.println("URLは指定されたドメインで終わっています。");
        } else {
            System.out.println("URLは指定されたドメインで終わっていません。");
        }
    }
}

このプログラムでは、nullチェックを行うことで安全に動作します。


URLは指定されたドメインで終わっています。

4. endsWithメソッドの応用例

4. endsWithメソッドの応用例
4. endsWithメソッドの応用例

実際のプログラムでは、endsWithメソッドを使用してファイルの種類を判定したり、URLのドメインを確認したりすることがよくあります。以下は応用例です。


public class FileCheckExample {
    public static void main(String[] args) {
        String[] files = { "document.pdf", "image.jpg", "notes.txt" };

        for (String file : files) {
            if (file.endsWith(".txt")) {
                System.out.println(file + " はテキストファイルです。");
            }
        }
    }
}

このプログラムを実行すると、次のような結果が得られます。


notes.txt はテキストファイルです。

このように、endsWithメソッドを使用して複数の文字列を効率的に判定することができます。

5. よくある質問と回答

5. よくある質問と回答
5. よくある質問と回答

Q: endsWithメソッドは部分一致に対応していますか?

A: いいえ、endsWithメソッドは文字列の末尾が完全一致しているかどうかを判定するために使用されます。部分一致を判定する場合は、containsメソッドやsubstringメソッドを使用することを検討してください。

6. まとめ

6. まとめ
6. まとめ

本記事では、JavaのStringクラスに含まれるendsWithメソッドについて詳しく学びました。このメソッドは、文字列が特定の文字列で終わっているかを確認するための便利なツールです。主な用途として、ファイルの拡張子の確認やURLのドメインの判定などが挙げられます。

endsWithメソッドはtruefalseを返すシンプルなメソッドですが、プログラムの中で非常に重要な役割を果たします。また、nullチェックや大文字小文字の区別など、安全に使用するための注意点も押さえることができました。

以下に、実践的な使用例を示します。


public class PracticalEndsWithExample {
    public static void main(String[] args) {
        String[] emails = { "user@example.com", "admin@domain.org", "support@example.com" };

        for (String email : emails) {
            if (email.endsWith("@example.com")) {
                System.out.println(email + " はexample.comのメールアドレスです。");
            } else {
                System.out.println(email + " は異なるドメインのメールアドレスです。");
            }
        }
    }
}

このプログラムを実行すると、次のような結果が得られます。


user@example.com はexample.comのメールアドレスです。
admin@domain.org は異なるドメインのメールアドレスです。
support@example.com はexample.comのメールアドレスです。

このようにendsWithメソッドを活用することで、文字列の末尾チェックを簡単に行うことができます。この記事で学んだ知識を基に、自分のプログラムに応用してみてください。

先生と生徒の振り返り会話

生徒

endsWithメソッドでファイルやURLを簡単にチェックできるのが分かりました!すごく便利ですね。」

先生

「その通りです。特に、条件分岐を使うことで、多くの文字列操作を効率的に処理できますよ。」

生徒

「これから、ファイル管理やログのチェックに使ってみたいと思います!」

先生

「ぜひ試してみてください。他のメソッドと組み合わせるとさらに柔軟な処理が可能になりますよ。」

カテゴリの一覧へ
新着記事
Springの@Transactional徹底解説!トランザクションの伝播・分離レベル・タイムアウトの基本
JavaのHashMapクラスgetメソッドの使い方を完全ガイド!初心者でもわかるjava.util入門
Thymeleafのth:fragmentを使ったテンプレートの再利用方法を完全ガイド!初心者でもわかる使い方
Javaの@PathVariableアノテーションの使い方を徹底解説!初心者でもわかるパスパラメータの基本と応用
人気記事
No.1
Java&Spring記事人気No1
Javaのラムダ式で配列を扱う!Arrays.streamの基本と注意点を初心者向けに解説
No.2
Java&Spring記事人気No2
JavaのRuntimeExceptionを完全解説!初心者でもわかるjava.langパッケージの基礎
No.3
Java&Spring記事人気No3
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.4
Java&Spring記事人気No4
JavaのIntegerクラスの使い方を完全ガイド!初心者でもわかる整数操作
No.5
Java&Spring記事人気No5
JavaのBigDecimalクラスcompareToメソッド完全ガイド!初心者でもわかる大小比較の基本
No.6
Java&Spring記事人気No6
Springの@Serviceアノテーションの使い方を徹底解説!初心者でもわかるSpring フレームワーク入門
No.7
Java&Spring記事人気No7
JavaのHttpSessionを徹底解説!初心者でもわかるセッション管理の基本
No.8
Java&Spring記事人気No8
Javaの@SuppressWarningsアノテーションの使い方を完全ガイド!初心者でもわかる警告の抑制方法