1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

BufferedReaderの使い方について

Last updated at Posted at 2020-01-26

##はじめに
BufefedReaderの使い方について説明します。
使用後は、AtCoderの問題で処理速度が改善しました。

##BufferdReaderの使い方
実装内容です。BufferedReaderクラスの中身は リンク先の方が書いておりましたのでご参考まで。(大変参考になりました)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
         〜省略〜

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
int stay = Integer.parseInt(input.readLine());
         〜省略〜

BufferedReaderクラスのインスタンス化はお決まりの記載なので、暗記で大丈夫です。

注意点はメソッドのreadLineメソッドが入力を一行ずつ取得する点ですね。一行でスペース区切りで配列に分けたい場合はsplitメソッドを使用するのが良いかと思います。

またお恥ずかしい話ですが、例外処理も詳しく把握していなかったのでこちらのサイトを参考にしました。

##今までは何を使っていた?
今まではScannerクラスをつかっていました。以下の通り実装してました。

import java.util.Scanner;
            〜省略〜
Scanner sc = new Scanner(System.in);
String s = sc.next();

         〜省略〜

##実際に変更してみて結果どうなった?

スクリーンショット 2020-01-26 20.33.44.png

1行目がBufferedReaderクラス使用後になります。約20%の速度が改善しました。

今回は入力する個数が4つなのでそこまで速度に影響しませんでしたが、今後大量データを処理する問題に直面した際にはBufferedReaderクラスは必須になるのかなと思いました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?