[英]Replace Scanner with BufferedReader
我有一個愚蠢的問題:如何在此方法中用BufferedReader替換Scanner:
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);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.