什么是 diff Scanner 和 BufferedReader

what is the diff Scanner and BufferedReader

SystemBufferedReader读取文件有什么区别?

 File fileName = new File("E:/go.txt");
  Scanner obj = new Scanner(fileName);
  int largest = 0;

  while (obj.hasNextInt()) {
   int input = obj.nextInt();
   if (largest < input) {

    largest = input;
   }
   
  }
  System.out.println("largest no. is:" + largest);

虽然两者都用于标准输入,但 Scanner 用于从流的内容中解析标记,而 BufferedReader 只是读取流而不进行任何特殊解析。

  • BufferedReadersynchronizedScanner 不是,所以如果您使用多线程,则由您决定 decide.Use BufferedReader
  • 与 BufferedReader(8KB 字节缓冲区)相比,Scanner 有一个小缓冲区(1KB 字符缓冲区),但绰绰有余。
  • BufferedReader 与扫描仪相比有点快。
  • 扫描器隐藏 IOExceptionBufferedReader 立即抛出