Java 用BufferedReader替换扫描仪
我有一个愚蠢的问题:在这种方法中,如何用BufferedReader替换扫描仪:Java 用BufferedReader替换扫描仪,java,Java,我有一个愚蠢的问题:在这种方法中,如何用BufferedReader替换扫描仪: public Coordinates getShot() { Scanner scanner = new Scanner(System.in); int x,y; do { System.out.print("Enter Х: "); x = Integer.parseInt(scanner.nextLine()); System.out.pr
public Coordinates getShot() {
Scanner scanner = new Scanner(System.in);
int x,y;
do {
System.out.print("Enter Х: ");
x = Integer.parseInt(scanner.nextLine());
System.out.print("Enter Y: ");
y = Integer.parseInt(scanner.nextLine());
System.out.printf("\nYou entered: [%d,%d]\n", x, y);
if(!Coordinates.checkCoordinates(x, y))
System.out.println("Error");
} while(!Coordinates.checkCoordinates(x ,y));
Coordinates shot = new Coordinates(x, y);
return shot;
}
看
Scanner用于解析来自流内容的令牌,而BufferedReader只读取流,不进行任何特殊解析
事实上,您可以将BufferedReader作为要解析的字符源传递给扫描仪
在这里使用BufferedReader是可能的,但没有兴趣:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
//....
int x,y;
System.out.print("Enter Х: ");
x = Integer.parseInt(reader.readLine());
System.out.print("Enter Y: ");
y = Integer.parseInt(reader.readLine());
System.out.printf("\nYou entered: [%d,%d]\n", x, y);
看
Scanner用于解析来自流内容的令牌,而BufferedReader只读取流,不进行任何特殊解析
事实上,您可以将BufferedReader作为要解析的字符源传递给扫描仪
在这里使用BufferedReader是可能的,但没有兴趣:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
//....
int x,y;
System.out.print("Enter Х: ");
x = Integer.parseInt(reader.readLine());
System.out.print("Enter Y: ");
y = Integer.parseInt(reader.readLine());
System.out.printf("\nYou entered: [%d,%d]\n", x, y);
在搜索
BufferedReader
类的javadoc时,您发现了哪些有用的方法?这些与nextLine
和Scanner
的其他功能相比如何?在搜索BufferedReader
类的javadoc时,您发现了哪些有用的方法?这些与nextLine
和Scanner
的其他功能相比如何?实际上,我需要一个BR将此代码包装到try/catch中。但我不知道如何正确执行。实际上,我需要一个BR将此代码包装到try/catch中。但我不知道如何正确地做。