スライドショー

【Java入門】toStringで数値を文字列へ変換(オーバーライドも解説)

こんにちは!エンジニアの中沢です。

Javaには数値を文字列に変換するための「toStringメソッド」があります。toStringメソッドを自作クラスで使用する場合には、「オーバーライド」をする必要があるので注意してください。

この記事では、

  • toStringメソッドとは
  • toStringメソッドの使い方
  • 自作クラスで使う場合の注意点
  • 自作クラスでオーバーライドして使う方法

などの基本的な内容から、応用的な使い方に関しても解説していきます。今回はこれらの方法を覚えるために、「toStringメソッド」の使い方をわかりやすく解説します!

toStringメソッドとは

toStringメソッドは、数値型などをString型の文字列に変換するために使用します。toStringメソッドは、引数にString型の文字列に変換したい変数を指定します。

戻り値として、String型の文字列を返します。

toStringメソッドの使い方

ここでは、toStringメソッドを使って数値を文字列に変換する方法を解説します。toStringメソッドは、引数に文字列に変換したい値を指定すると、戻り値として変換した文字列を返します。

次のプログラムで確認してみましょう。

public class Main {
    public static void main(String[] args) {

        int num1 = 123;
        int num2 = 456;

        System.out.println(num1 + num2);

        String str1 = Integer.toString(num1);
        String str2 = Integer.toString(num2);
        
        System.out.println(str1 + str2);
    }
}

実行結果:

579
123456

このプログラムでは、+演算子で数値を足した結果と、文字列を結合した結果をそれぞれ表示しています。Integerはint型のラッパークラスで、toStringメソッドを呼び出すために使用しています。

ラッパークラスについてはこちらの記事で詳しく解説しているので、ぜひ確認してください。

【Java入門】Integerとラッパークラスの基礎の基礎をわかりやすく解説!
更新日 : 2018年10月4日

自作クラスで使う場合の注意点

自作クラスでtoStringメソッドを使う場合には、そのままでは使えないので注意が必要です。自作クラスでは表示する文字列を指定するために、オーバーライドをして使う必要があります。

オーバーライドをしない場合にどうなるのか、次のプログラムで確認してみましょう。

class Samurai {
    int age = 20;
}

public class Main {
    public static void main(String[] args) {

        Samurai samurai = new Samurai();
        String str = samurai.toString();

        System.out.println(str);
    }
}

実行結果:

[email protected]

この実行結果のように、意味の分からない文字列が表示されてしまいます。toStringメソッドをオーバーライドして、目的の文字列を取得する方法はこの後で解説します。

オーバーライドについてはこちらの記事で詳しく解説しているので、ぜひ確認してください。

【Java入門】オーバーライド(Override)の使い方
更新日 : 2019年6月7日

自作クラスでtoStringメソッドをオーバーライドして使う方法

自作クラスでtoStringメソッドを使うには、オーバーライドをする必要があります。

オーバーライドをして、目的の文字列を取得する方法を次のプログラムで確認してみましょう。

class Samurai {
    int age = 20;

    @Override
    public String toString() {
        return "age = " + age;
    }
}

public class Main {
    public static void main(String[] args) {

        Samurai samurai = new Samurai();
        String str = samurai.toString();

        System.out.println(str);
    }
}

実行結果:

age = 20

このプログラムでは、自作クラスでtoStringメソッドをオーバーライドして、「age = 20」を返すようにしています。オーバーライドするときには、「@Override」というアノテーションをつけます。

アノテーションについてはこちらの記事で詳しく解説しているので、ぜひ確認してください。

【Java入門】アノテーションの使い方と作成する方法
更新日 : 2019年4月16日

まとめ

いかがでしたか?

今回は「tostringメソッド」で数値を文字列に変換する方法を解説しました。tostringメソッドは自作クラスではオーバーライドして使う必要があるので注意してくださいね。

もし、tostringメソッドの使い方を忘れてしまったらこの記事を確認してください!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

中沢 丈

中沢 丈

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説