You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java实现多输入布尔匹配及正确输入次数统计的问题求助

问题解答

需求完全可行,你的场景确实属于布尔匹配场景

你通过判断输入是否与目标数组中的元素匹配,用boolean match标记结果,这就是典型的布尔匹配逻辑,完全没问题。

你的问题根源:缺少循环控制多次输入,count++位置不对

原代码只执行了一次输入检查,没有循环结构支持多次输入;另外count++需要放在匹配成功的分支里,也就是if (capital.equalsIgnoreCase(currentInput))代码块内,同时要在循环外初始化count变量,否则每次循环都会重置计数。

修改后的完整代码

import java.util.Scanner;

public class CapitalQuiz {
    // 假设stateCapitals是已定义的二维数组,这里示例结构
    private static String[][] stateCapitals = {
            {"Alabama", "Montgomery"},
            {"Alaska", "Juneau"}
            // 可补充其他州与首府数据
    };

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int correctCount = 0; // 初始化正确次数计数器,放在循环外避免重置

        System.out.println("欢迎输入美国州首府,输入quit结束");
        while (true) {
            System.out.print("请输入首府:");
            String currentInput = scanner.nextLine().trim();

            // 退出条件:输入quit时结束程序
            if (currentInput.equalsIgnoreCase("quit")) {
                break;
            }

            boolean match = false;
            // 提取所有首府到数组(对应原代码stateCapitals[1]的逻辑)
            String[] capitals = new String[stateCapitals.length];
            for (int i = 0; i < stateCapitals.length; i++) {
                capitals[i] = stateCapitals[i][1];
            }

            for (String capital : capitals) {
                if (capital.equalsIgnoreCase(currentInput)) {
                    match = true;
                    correctCount++; // 匹配成功时计数+1
                    break;
                }
            }

            if (match) {
                System.out.println("Correct!当前正确次数:" + correctCount);
            } else {
                System.out.println("incorrect");
            }
        }

        // 结束时输出最终统计
        System.out.println("程序结束,你总共答对了" + correctCount + "次");
        scanner.close();
    }
}

关键修改点说明

  • 多次输入实现:用while(true)无限循环,通过输入"quit"触发break退出,支持反复输入
  • 正确计数逻辑:correctCount在循环外初始化,仅在匹配成功时执行correctCount++,保证计数连续累加
  • 布尔匹配逻辑保留:原有的boolean match标记匹配结果的逻辑完全保留,符合你的需求

内容的提问来源于stack exchange,提问作者Natebd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 05:35:35