最近我修改了我的代码
- 在从 STDIN 获取输入时,我从
Scanner
转移到BufferedInputStream
。 - 我还阅读了有关
BufferedReader
的内容,它从任何InputStreamReader
获取输入。此InputStreamReader
可以与System.in
一起使用来获取STDIN
输入。 BufferedInputStream
有read()
方法,需要根据目的进一步解析。
就我而言,首先我需要从 STDIN 获取一个整数(假设为 n)作为输入,之后 for 循环将获取 n 个字符串作为输入。这些字符串最多包含 1,00,000 个字符。
问题是:Scanner
、BufferedInputStream
和 BufferedReader
中哪一个对我的目标表现更好?
最佳答案
扫描仪旨在简化用户在运行时接受输入参数的过程。这相当于 java 中的 scanf()/getc()/cin。 “Reader”用于读取字符数据,“Stream”用于读取流数据。扫描仪最适合您的用途。因为它的编码和使用都很简单。
关于java - BufferedReader 与 BufferedInputStream 的性能衡量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9903447/