解決済み

Java print()とprintf()について

  • 困ってます
  • 質問No.7335381
  • 閲覧数416
  • ありがとう数2
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 50% (1/2)

JavaのPrintStreamクラスのprint()とprintf()メソッドに関して質問です。
どちらのメソッドもPrintStreamにデータを書き込でいるように思うのですが、print()メソッドには戻り値がないのに対し、printf()メソッドにはPrintStream型の戻り値が存在しているのはなぜでしょうか?
どなたかご回答いただければ幸いです。

質問者が選んだベストアンサー

  • 回答No.1

ベストアンサー率 35% (1452/4146)

ソースコードの簡略化のためです

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からは地味にコーディング量が減るようになっているので
その一環ですね
お礼コメント
pipi8290

お礼率 50% (1/2)

早速のご回答ありがとうございました。
おかげさまで理解が少し深まったように思います。
投稿日時 - 2012-03-01 23:25:19
Be MORE 7・12 OK-チップでイイコトはじまる
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


より良い社会へ。感謝経済プロジェクト始動

ピックアップ

ページ先頭へ