有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

if语句Java Simon表示程序问题

这是我在这个网站上的第一篇帖子,如果我违反了规则或者我不知道的事情,我非常抱歉。也就是说,我的老师分配我做一个西蒙·赛义德项目,我正在努力学习,所以我正在寻找其他的帮助途径。规则如下:

完成这项任务的方法完全取决于你。代码必须完全按照规定工作,才能获得适当的信用。西蒙,你将设计这个游戏。西蒙有四种颜色:红色、蓝色、绿色和黄色。用户必须按照正确的顺序选择Simon选择的相同颜色。西蒙选择的颜色必须是随机的。每一轮都会在序列中加入另一种颜色。当用户失败时,Simon应该告诉用户他们持续了多少轮。你可以玩多少回合应该没有限制。此任务不需要GUI。如果您使用JOptionPane选择颜色,则必须使用红色、蓝色、绿色和黄色的字母快捷方式。你还必须包括游戏说明。您还必须跟踪每场比赛的高分,并允许用户输入他们的高分名称。如果你关闭了程序,你不必记分数;只有在程序打开时

当我执行代码时,当用户给出正确答案时,它不会继续游戏,而是在一个循环后终止。奇怪的是,只有当我给出错误的答案时,它才会循环。最后,我想指出,我的程序非常基本,因为这是我所知道的所有使用方法。谢谢你的帮助

package stuff;

import java.util.ArrayList;

import javax.swing.JOptionPane;

public class Simon {
    String s = "";
    String a = "";
    String c = "";
    String d = "";
    boolean b = true;
    boolean b2 = true;
    String obj[] = { "Red", "Yellow", "Green", "Blue" };
    ArrayList<String> colors = new ArrayList<String>();
    String[] options = new String[] { "Red", "Yellow", "Green", "Blue" };
    int count = 0;
    int count2 = 0;
    int score = 0;

    public String simon() {
            do {
                int c = ((int) (Math.random() * 4));
                if (c == 0)
                    colors.add(obj[0]);
                else if (c == 1)
                    colors.add(obj[1]);
                else if (c == 2)
                    colors.add(obj[2]);
                else if (c == 3)
                    colors.add(obj[3]);
                else {
                    JOptionPane.showMessageDialog(null,
                            "weird stuff happened bruh");
                }
                JOptionPane.showMessageDialog(null, colors.get(count));
                b2 = true;
                while (b2) {
                    for (int i2 = 0; i2 < colors.size(); i2++) {
                        a = JOptionPane.showInputDialog("put letter");
                        if(a != null){
                        if (a.equalsIgnoreCase(colors.get(i2))) {
                            JOptionPane.showMessageDialog(null,
                                    "Your color  is right" + score);
                            score += 1;
                            if (i2 == colors.size() - 1)
                                b2 = false;
                            else {
                                JOptionPane.showMessageDialog(null, "weird stuff happened bruh fo realz");  
                            }
                        } else {
                            b2 = false;
                            b = false;
                        }
                    }else{
                       System.exit(0);
                   }
                }
                }
                count++;
            } while (b == false);

        return s;
    }
}

共 (0) 个答案