如何从Java(控制台)中的用户获取输入?
下面我有一个我的完整代码的井字游戏程序的副本。我知道它还没有太多,但我被困在获取输入部分。我已经设法从用户那里得到1个输入,然后将其输出(列),但是当我尝试为行输入不同的东西时,它给了我用于列的任何内容。有关如何解决它的任何想法?如何从Java(控制台)中的用户获取输入?
我刚刚学习java,请温柔。
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
System.out.println ("Please make your first move by entering a column and then a row, like this: c r \n");
int columnGotten = 0;
int rowGotten = 0;
//gets your column number choice
BufferedReader columnInput = new BufferedReader(new InputStreamReader (System.in));
try {
columnGotten = Integer.parseInt(columnInput.readLine());
} catch (NumberFormatException nfe) {
System.out.println ("If you're not going to play fair, I'm going to leave. Bye.");
return;
}
System.out.print ("Your column is " + columnGotten + "\n");
//gets your row number choice
BufferedReader rowInput = new BufferedReader(new InputStreamReader (System.in));
try {
rowGotten = Integer.parseInt(rowInput.readLine());
} catch (NumberFormatException nfe) {
System.out.println ("If you're not going to play fair, I'm going to leave. Bye.");
return;
}
System.out.print ("Your row is " + columnGotten);
}
}
变化
System.out.print ("Your row is " + columnGotten);
到
System.out.print ("Your row is " + rowGotten);
当然,* facepalm *。非常感谢! – Vasu 2012-03-11 23:03:07
别担心。即使是最先进的开发者也会犯这样的错误。只要您复制/粘贴以仔细检查更改,请记住。 ;) – iCantSeeSharp 2012-03-11 23:05:02
当然,谢谢你的帮助:) – Vasu 2012-03-11 23:06:03
使用扫描仪尝试输入。
Scanner sc = new Scanner();
int x = sc.nextInt();
String s = sc.nextLine();
依此类推。希望能帮助到你。
您不得建立新的阅读器,只需使用前面的阅读器。 – 2012-03-11 22:59:52
我试图做到这一点,但它仍然给了我相同的错误(显示旧的输入)。 – Vasu 2012-03-11 23:01:06