KENスクールブログ | パソコン教室・パソコン講座なら個別指導のKENスクール

BLOGKENスクールブログ

  1. KENスクール TOP >
  2. KENスクールブログ > プログラム > [Java]toString()メソッドの有用な使い方

プログラム

[Java]toString()メソッドの有用な使い方

KENスクールの動画配信サービス「KEN×ONLINE」

toString()メソッドとは、java.lang.Objectクラスで定義されている文字列表現を返すメソッドです。

全てのクラスはこのjava.lang.Objectクラスを継承しているため、必然的にどのクラスでもtoString()メソッドが定義されていることになります。

私たちは、無意識のうちにこのtoString()メソッドを使用していることが多々あります。

例えば以下のサンプルコードをご覧下さい。

使用例:

出力結果:

{key1=value1, key2=value2, key3=value3}

java.util.HashMapのオブジェクトを生成し、値とキーを3つセットしています。

最後にprintln()メソッドの引数にjava.util.HashMapのオブジェクトを指定して、オブジェクト内の要素を確認するコードになっています。実はjava.lang.String以外の参照型が引数に指定された場合は、そのオブジェクトのtoString()メソッドで文字列が取得され出力されます。

つまり、

System.out.println(map.toString());

と記述しているのと同じ結果になります。

また、出力結果が上記のようになるのは、java.util.HashMapクラスでtoString()メソッドをオーバーライドして、上記の出力になるように文字列を返しているからです。

このようにオブジェクトの内容を文字列化するためのtoString()メソッドは、自作クラスでもオーバーライドすることができます。以下の例をご覧下さい。

使用例:

出力結果:

TestBean[id=10, name=KEN, address=東京都]

TestBeanクラスでもtoString()メソッドをオーバーライドします。そして、toString()メソッドの戻り値に表示したい文字列を返すように処理を記述します。

使用方法はjava.util.HashMapのオブジェクトと同様に、オブジェクト生成後、println()メソッドの引数にオブジェクトを渡すことにより、toString()メソッドが呼び出され、文字列が取得され出力されます。

オブジェクト指向では、カプセル化を用いてデータを保持することが多いため、toString()メソッドをオーバーライドしてフィールドを確認する方法は有用だと思います。

この記事に関連する講座

業界へのパスポート!プログラムが難しいなんて言わせない!

詳しくはこちら