- ベストアンサー
Java print()とprintf()について
JavaのPrintStreamクラスのprint()とprintf()メソッドに関して質問です。 どちらのメソッドもPrintStreamにデータを書き込でいるように思うのですが、print()メソッドには戻り値がないのに対し、printf()メソッドにはPrintStream型の戻り値が存在しているのはなぜでしょうか? どなたかご回答いただければ幸いです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
ソースコードの簡略化のためです printとprintlnは従来からのメソッドで これを使うと次のような実装になります PrintStream out = System.out; out.println("a"); out.println("b"); out.println("c"); そしてJava5から下記のメソッドが追加されました append、format、printf これを使うと前述は次のように実装されます PrintStream out = System.out; out.append("a") .append("b") .append("c"); それだけのことと言えばたったそれだけのことなのですが これによってStreamへの書き込みが StringBuilderやStringBufferと同じインターフェースで行えるようになりました その上outを記述する回数が減りました Java5からは地味にコーディング量が減るようになっているので その一環ですね
お礼
早速のご回答ありがとうございました。 おかげさまで理解が少し深まったように思います。