「BufferedReader」と「Scanner」の違いって?

こんばんは、うさです。 だんだん寒くなってきて体調を崩す方もちらほらと出てきましたので、 皆さんもくれぐれも注意しましょう!! 僕もなんか鼻声で万全にはほど遠いですが、今日も早速いっちゃいましょう!!   本日は、「java」のソースコードの紹介(今どんなことをしているのか)とそのコードを書いて学んだことを書いていきます。
  import java.io.*; public class Lesson5_7 { public static void main(String[] args) { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); try{ System.out.println(“数字を0~6の間で入力してください”); System.out.println(“すると、曜日が表示されます”); String str = reader.readLine(); int week = Integer.parseInt(str); switch(week){ case 0 : System.out.println(“月曜日”); break; case 1 : System.out.println(“火曜日”); break; case 2 : System.out.println(“水曜日”); break; case 3 : System.out.println(“木曜日”); break; case 4 : System.out.println(“金曜日”); break; case 5 : System.out.println(“土曜日”); break; case 6 : System.out.println(“日曜日”); break; default : System.out.println(“0~6の数字を入力してください”); break; } }catch(IOException e){ System.out.println(e); }catch(NumberFormatException e){ System.out.println(“数字を入力してください”); } } }
  結果としては、プログラムを実行すると 「数字を0〜6の間で入力してください」 と表示されるので、0〜6の数字を入力するとそれぞれ対応した曜日が表示される訳ですが、 BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); のBufferedReaderは今回初めて書きました。 今までは同じような機能でScannerを使っていたんですよね。 違いを調べたところBufferedReaderの方が読み込みが早くScannerの方が多くのメソッドを持っているので、高機能ということらしいですね。 使い分けが難しいですが、プログラムが複雑化していった時に読み込みスピードを求めるかどうかってところでしょうか!! 本日はこれくらいで、以上うさでした。

Usami Go

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です