25
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【ポケモン×Java】これだけは覚えたい!`String`の便利メソッドまとめ

Last updated at Posted at 2025-07-28

はじめに

Javaでプログラムを書いていると、文字列(String)を
扱う機会って本当に多いですよね。

たとえば、

  • ユーザーの入力チェック
  • ログ出力
  • ファイルの読み書き
  • データの整形や分割
    などなど、、、

でも、意外とStringクラスのメソッドを使いこなせていない人も多い。
この記事では、「あ、これ使えばラクだったんだ!」と思ってもらえるような、
便利かつ使用頻度の高いメソッドを厳選してまとめました。

初心者の方でも「読んですぐ使える」よう、
目的別に使い方と具体例つきで解説していきます!


1. length():文字数を数えたいとき

String name = "Pikachu";
System.out.println(name.length());  // 7

💡ポイント

  • 配列のlengthとは違って、メソッド!
  • 半角も全角も「1文字 = 1カウント」になる。

2. isEmpty() / isBlank():空かどうかチェック

String s1 = "";
String s2 = "   ";

System.out.println(s1.isEmpty());  // true
System.out.println(s2.isEmpty());  // false
System.out.println(s2.isBlank());  // true

💡ポイント

  • isEmpty() は長さが0かどうか。
  • isBlank() はスペースや改行なども含めて“中身がない”と判定してくれる。
  • 入力バリデーションに超便利!

3. charAt(int index):一文字だけ取り出したい

String text = "Java";
System.out.println(text.charAt(1));  // 'a'

💡ポイント

  • インデックスは0からスタート!
  • 範囲外の値を指定するとStringIndexOutOfBoundsExceptionになるので注意。

4. substring():部分的に取り出したい

String message = "Hello World";
System.out.println(message.substring(6));     // "World"
System.out.println(message.substring(0, 5));  // "Hello"

💡ポイント

  • substring(start)は、start番目以降をすべて。
  • substring(start, end)は、start以上end未満。

5. contains() / startsWith() / endsWith()

String email = "hitomin@example.com";
System.out.println(email.contains("@"));          // true
System.out.println(email.startsWith("hitomin"));  // true
System.out.println(email.endsWith(".com"));       // true

💡ポイント

  • メールアドレスの判定、ファイル拡張子チェックなどに便利!

6. indexOf() / lastIndexOf():どこにある?

String text = "banana";
System.out.println(text.indexOf("b")); // 0 ← 最初の'b'は0番目
System.out.println(text.indexOf("a"));       // 1
System.out.println(text.lastIndexOf("a"));   // 5

💡ポイント

  • 該当文字がない場合は -1 を返す。
  • 前から探すか、後ろから探すかで使い分けよう。

7. replace():文字の置き換え

メソッド 正規表現
replace() ❌ 使わない
(文字列そのままを探す)
"a.b".replace(".", "x") → "a xb"
replaceAll() ✅ 使う
(.は正規表現の「任意の1文字」)
"a.b".replaceAll(".", "x") → "xxx"
String s = "ぴかぴかぴかー!";
System.out.println(s.replace("ぴか", "ピカ"));  // ピカピカピカー!

💡ポイント

  • 複数個所すべて置き換えてくれる。
  • 正規表現対応したいなら replaceAll() を使おう。

8. toLowerCase() / toUpperCase():大小文字の変換

String s = "Java";
System.out.println(s.toUpperCase());  // JAVA
System.out.println(s.toLowerCase());  // java

💡ポイント

  • ファイル名や入力の正規化(大文字小文字を統一)に便利。

9. trim():余分なスペースを削除

String s = "  ピカチュウ  ";
System.out.println(s.trim());  // "ピカチュウ"

💡ポイント

  • Stringの前後にあるスペースだけを削除。
  • 改行や全角スペースは削除されないこともあるので注意。

10. split():分割して配列に

String csv = "ピカチュウ,ヤドラン,ピジョン";
String[] pokemons = csv.split(",");

for (String pokemon : pokemons) {
    System.out.println(pokemon);
}

💡ポイント

  • 区切り文字は正規表現として扱われる。
  • "|"(パイプ)は "\\|" のようにエスケープが必要!

11. String.join():配列を文字列に

String[] names = {"コダック", "コラッタ", "ズバット"};
String joined = String.join("・", names);
System.out.println(joined);  // コダック・コラッタ・ズバット

💡ポイント

  • split()の逆操作をしたいときに便利。
  • Java 8以降で利用可能!

12. format():テンプレートとして使いたい

String name = "ひとみん";
int level = 42;
String result = String.format("%sのレベルは%dです", name, level);
System.out.println(result);  // ひとみんのレベルは42です

💡ポイント

  • System.out.printf()と同じ書式で使える。
  • 表示用のメッセージをきれいに整えたいときに便利。

13. valueOf():他の型を文字列に

int score = 100;
String text = String.valueOf(score);
System.out.println(text + "点");  // 100点

💡ポイント

  • + ""でも文字列化できるけど、こっちの方が明示的。

おわりに

どのメソッドも、「これってどうやって書くんだっけ?」となりがちだけど、
知っておくとコードがすっきり・読みやすく・安全になるものばかり。

特に、ユーザー入力を扱うWebアプリや、文字列整形が必要なバッチ処理では大活躍!

あとがき

ここまで読んでくれて、本当にありがとうございました。

「プログラミングって難しい…」って思ってた人も、
「ちょっと楽しいかも…!」って思ってもらえたらうれしいな。

次の投稿も、よろしくおねがいします。

💬 コメント・フィードバック歓迎!

「この章わかりやすかった!」
「これ表現まちがってない?」
「次は○○をやってほしい!」などなど、
お気軽にコメントで教えてくださいね!


25
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?