文字列の操作!JavaでStringクラスを使う方法【初心者向け】

初心者向けにJavaでStringクラスを使う方法について解説しています。Javaを扱う上でクラスは欠かせない知識です。Stringクラスは文字列を扱うクラスで書き方を説明しています。実際にサンプルプログラムを書いて理解しましょう。

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

JavaでStringクラスを使う方法について解説しています。

Javaで文字列を扱う上で欠かせないクラスなので、書き方を理解しておきましょう。

 

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

 

田島悠介

今回はStringクラスについて勉強しよう。

大石ゆかり

田島メンター!Stringクラスは何をするんですか~?

田島悠介

これは文字列に関する処理を行うときに使うものなんだ。基本の形から見ていこうか。

大石ゆかり

はい!

Stringクラスとは

Stringクラスとは文字列を表すクラスです。

文字列を結合、分割したり、特定の文字が含まれているか検索したりするメソッドが用意されています。

 

Stringクラスの書き方

以下のように宣言します。

String s;

宣言と初期化を同時にできます。

String s = "文字列";

 

田島悠介

宣言の書き方と、宣言・初期化を同時に行う方法だね。

大石ゆかり

“s”の部分には変数の名前を入れたらいいんですね。

田島悠介

次に、文字列を扱う色々な処理の例を解説しよう。

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

実際に書いてみよう

文字列の各種操作

ソースコード

// Stringクラスのインスタンスを作成する
String a = "あいうえお";
String b = "かきくけこ";
System.out.println(a);
System.out.println(b);
    
// 文字列を連結し、新しい文字列を作成する
String c = a + b;
System.out.println(c);

// 文字列の長さを調べる
System.out.println("文字列cの長さ: " + c.length());
    
// 文字列を比較する
String d = "さしすせそ";
String e = "さしすせそ";
System.out.println("==演算子による比較: " + e == d);
System.out.println("equalsメソッドによる比較: " + e.equals(d));

実行結果

あいうえお
かきくけこ
あいうえおかきくけこ
文字列cの長さ: 10
==演算子による比較: false
equalsメソッドによる比較: true

解説

+演算子で文字列を結合します。

文字列a「あいうえお」、文字列b「かきくけこ」を結合したので、文字列cは「あいうえおかきくけこ」になりました。

続いて、lengthメソッドで文字列の長さを調べます。

文字列cの長さは10です。

文字列の比較には注意が必要です。

文字列d、文字列eはともに「さしすせそ」という内容です。

==演算子は「同じオブジェクトか」という比較を行います。dとeは異なるオブジェクトなので、結果はfalseになりました。

equalsメソッドは文字列の内容を比較します。内容は同じなので、結果はtrueになりました。

 

オブジェクトの文字列表現を実装する

自作クラスを適当な文字列で表現したいケースがあり、そのような場合はそのクラスでtoStringメソッドを実装します。

ソースコード

package wordpress.str;

public class ToStringDemo {
  public static void main(String[] args) {
    WithoutToString wo = new WithoutToString("ABC");
    System.out.println(wo);
    
    WithToString w = new WithToString("DEF");
    System.out.println(w);
  }
}

class WithoutToString {
  private String name;

  public WithoutToString(String name) {
    this.name = name;
  }
}

class WithToString {
  private String name;

  public WithToString(String name) {
    this.name = name;
  }

  public String toString() {
    return "このオブジェクトの名前は" + name + "です";
  }
}

実行結果

wordpress.str.WithoutToString@18e8568
このオブジェクトの名前はDEFです

解説

WithoutToStringクラスではtoStringメソッドを実装しませんでした。

そのためインスタンスをコンソールに出力すると、”WithoutToString@18e8568″ のような英数字の表現になりました。

WithToStringクラスではtoStringメソッドを実装しました。同様に出力すると、toStringメソッドの実装に従った文字列表現になりました。

 

以上、JavaのStringクラスの書き方を解説しました。

入門向けJavaの学習サイトもまとめているので、合わせてご覧ください。

 

田島悠介

Stringクラスによる一連の操作を紹介したよ。

大石ゆかり

文字列を出力・連結したりする他にも長さを調べたり、文字列同士を比較したりできるんですね。

田島悠介

文字列に関係した処理は頻繁に使用することになるので、一通りの書き方を覚えておこう。

大石ゆかり

了解です。ありがとうございました!

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

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

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

この記事を監修してくれた方

橋本紘希(はしもとこうき)
システムインテグレータ企業勤務のシステムエンジニア

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。