java中如何清除buffer
时间: 2024-02-09 14:11:27 浏览: 31
在Java中,如果要清除缓冲区(buffer),可以使用Scanner类的nextLine()方法。当我们使用Scanner类的nextXXX()方法读取输入时,如果输入的数据中包含了回车符(\n)或换行符(\r),那么这些字符会被留在输入缓冲区中,而不会被读取。如果我们需要清除缓冲区,可以在读取输入之前先调用Scanner类的nextLine()方法,将缓冲区中的内容读取并丢弃掉。例如:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = scanner.nextInt();
scanner.nextLine(); // 清除缓冲区
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
System.out.println("您输入的整数是:" + num);
System.out.println("您输入的字符串是:" + str);
}
}
```
在上面的示例中,我们在读取字符串之前调用了Scanner类的nextLine()方法,以清除缓冲区。这样,在读取字符串时,就不会受到之前输入的整数的影响了。