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

Java入门:如何跳过已猜对的值不再重复询问输入?

实现猜对后跳过对应值的询问方案

可以通过在循环内条件判断是否需要询问对应位置来实现这个需求——只要某个值已经猜对,就跳过该值的询问步骤,只处理未猜对的那个。

修改后的完整代码

import java.util.Scanner;
import java.util.Random;

public class GuessGame {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        Random random = new Random();
        int randomX = random.nextInt(10); // 可自行调整随机数范围
        int randomY = random.nextInt(10);
        int guessX = -1;
        int guessY = -1;

        // 只要X或Y有一个没猜对,就继续循环
        while (guessX != randomX || guessY != randomY) {
            // 仅当X未猜对时,才询问X的位置
            if (guessX != randomX) {
                System.out.print("Enter a guess for the X position of Mr. Yertle: ");
                guessX = scan.nextInt();
                if (guessX < randomX) {
                    System.out.println("Too low! Guess higher.");
                } else if (guessX > randomX) {
                    System.out.println("Too high! Guess lower.");
                } else {
                    System.out.println("Ding, ding! You are correct for X!");
                }
            }

            // 仅当Y未猜对时,才询问Y的位置
            if (guessY != randomY) {
                System.out.print("Enter a guess for the Y position of Mr. Yertle: ");
                guessY = scan.nextInt();
                if (guessY < randomY) {
                    System.out.println("Too low! Guess higher.");
                } else if (guessY > randomY) {
                    System.out.println("Too high! Guess lower.");
                } else {
                    System.out.println("Ding, ding! You are correct for Y!");
                }
            }
        }
        System.out.println("Congratulations! You've guessed both positions correctly!");
        scan.close();
    }
}

核心逻辑说明

  • 循环条件保持guessX != randomX || guessY != randomY,只要有一个位置没猜对,循环就继续
  • 在循环内部,通过if (guessX != randomX)和if (guessY != randomY)做判断:只有对应位置未猜对时,才执行询问和反馈逻辑
  • 当某个位置被猜对后,后续循环会自动跳过该位置的询问,只处理未猜对的那个值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 08:55:17