首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >2048 Java游戏:移动函数

2048 Java游戏:移动函数
EN

Stack Overflow用户
提问于 2021-01-01 01:42:22
回答 1查看 138关注 0票数 0

我重现了2048年的比赛。我只有一个问题。当用户输入与移动相对应的字母时,它应该向该方向移动,打印游戏板并停止,直到用户再次输入字母。我使用switch语句来做这件事,但是当用户输入"R“时,循环就会继续。我的意思是,程序打印游戏板,它不会停止。我怎么才能阻止它?

代码语言:javascript
复制
boolean play = true;
while (play == true)
{
    boolean canMove = false;
    switch(answer)
    {
        case "U":
            canMove = moveUp(board,dimension);
            break;
        case "D":
            canMove = moveDown(board,dimension);
            break;
        case "R":
            canMove = moveRight(board,dimension);
            break;
        case "L":
            canMove = moveLeft(board,dimension);
            break;
        default:
            System.out.println("Invalid input. Try again.");
            printBoard(board,dimension);
            answer = in.next();
            break;
    }
EN

回答 1

Stack Overflow用户

发布于 2021-01-01 02:26:02

语句play留在true上。当用户输入字符时,语句仍保留为true。由于没有其他用户输入行,程序陷入循环。

在我看来,要解决这个问题,应该在while (play == true)之后添加一行用户输入代码,在每种情况下,都应该在break;之前添加play = false;

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65524051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档