下面显示的代码是我正在创建的迷宫游戏的主要方法。 在这个主要方法中,我有一个while循环,一直持续到游戏结束。 在while循环中,我打印迷宫,然后询问用户他们想要移动角色的方向。 我有一个疯狂的问题,提示用户要求密钥,不会显示。 输出只打印迷宫,然后等待用户输入。
do
{
maze.printArray();
//Asks the user which direction they wish to move THIS LINE NEVER SHOWS UP!
System.out.print ("Enter U,L,D,R to indicate move direction: ");
//Gets the string from user, and changes it to a char, then converts it to an uppercase
direction = read.next().charAt(0);
direction = Character.toUpperCase(direction);
//Moves the character and increments the invalidMoves counter if the move was not legal
if(maze.move(direction) == false)
invalidMoves++;
//Increment the move count regardless of its validity
moves++;
}
while(maze.isFinished() == false);
这是在打印之前调用的printArray方法。
public void printArray()
{
for (char [] x : mazeArray)
{
for (char y : x)
{
//Print the characters for the row
System.out.print (y);
}
//linebreak to go to next row
System.out.println ();
}
System.out.println ();
}
2D阵列保持迷宫图案,该图案显示在屏幕上
XXXXXXXXXX
XO-------X
XX-XXX-XXX
XX---X---X
XXXX-X-X-X
X----X-XXX
X-XXXX--$X
XXXXXXXXXX
答案 0 :(得分:1)
在System.out.flush();
后尝试print()
。
答案 1 :(得分:1)
如果您的代码调用了System.setOut(printStream),则可以使用以下命令将其恢复为stdout:
System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
如果在调用进程时将stdout重定向到某处,则可以使用以下命令指定自己的PrintStream:
System.setOut(new PrintStream(new FileOutputStream("out.txt")));
或者您可以直接写入PrintStream:
PrintStream ps = new PrintStream(new FileOutputStream("out.txt"));
ps.println("hi");
答案 2 :(得分:0)
尝试使用println
代替print
...