当前位置: 首页 > 知识库问答 >
问题:

如何使用循环语句而不是go to语句

卫皓
2023-03-14
 while(true)
    {
  
        switch (...)
        {
            case 1:
                //some code
                break;
            case 2:
                //some code
                break;
        }


        System.out.println("(1)Continue (2)Exit");

   //example:

        int choice = scanner.nextInt();

        if (choice == 1)
            continue; //it should go to switch

        else if (choice == 2)
        {
            System.out.println("Exit..."); // should exit
            break;
        }

 
        else
        {
            System.out.println("Wrong num, try it again!"); // should ask choose again until we enter 1 or 2

            //goto example;
        }

    }

我的问题是:当我选择错误的数字时,它会转到循环的开始。我希望它转到要求选择的部分(int choice=scanner.nextInt();)再问一遍。“1”->切换,“2”->“退出”,“3”->再次询问选择。

共有1个答案

穆毅然
2023-03-14

这应该能解决你的问题。

import java.util.Scanner;

class Main
{
    public static void main (String[] args)
    {
        Scanner sc = new Scanner(System.in);
        
      
            switch (0)
            {
                case 1:
                    //some code
                    break;
                case 2:
                    //some code
                    break;
            }


            System.out.println("(1)Continue (2)Exit");

        while(true)
        {
            int choice = sc.nextInt();

            if (choice == 1)
                continue;

            else if (choice == 2)
            {
                System.out.println("Exit...");
                break;
            }
            
            else
            {
                System.out.println("Wrong num, try it again!");
            }

        }
    }
}

如果您有其他要求,请更新您的问题。

 类似资料:
  • 问题内容: 我正在上高中AP计算机科学课程。 我决定在我们的一个实验室里发表一个声明,只是为了玩弄,但是我遇到了这个错误。 我问了一个关于Stackoverflow 的问题,以找出如何正确执行它,并且我所做的完全如答案之一所示。我真的不明白为什么编译器想要一个语句(至少这是我假设的要求),我也不知道如何使用。似乎希望重新启动的部分是一个变量,但是重新启动只是将程序拉回到第10行的标签,以便用户可以

  • 这个程序基本上允许用户输入任何单词,直到他/她输入单词“last”。 如果单词包含字母“s”,则应显示单词确实包含“s”或“s”,否则应显示单词不包含“s”或“s”。 示例:用户输入的单词= •约翰 詹姆斯 •馅饼 莎莉 结果: 约翰不包含's'或'S' James确实包含“s”或“s” 馅饼不含's'或'S' Sally不包含“s”或“s” 该程序可以工作,但我需要更改if语句,以便它使用equ

  • 1、什么是循环语句 一般编程语言都有循环语句,为什么呢? 那就问一下自己,我们弄程序是为了干什么? 那肯定是为了方便我们工作,优化我们的工作效率啊。 而计算机和人类不同,计算机不怕苦也不怕累,也不需要休息,可以一直做。 你要知道,计算机最擅长就是做重复的事情。 所以这时候需要用到循环语句,循环语句允许我们执行一个语句或语句组多次。 循环语句的一般形式如下: 在 Python 提供了 for 循环和

  • while 循环:while 条件 do … end repeat 循环:repeat … until 条件 for 循环:for 变量 = 初值,终点值,步进 do … end for 循环:for 变量 1,变量 2,… ,变量 N in表或枚举函数 do … end while 循环 my_table = {1,2,3} local index = 1 -- 注意: table 中的索引从

  • 主要内容:使用 goto 退出多层循环,使用 goto 集中处理错误Go语言中 goto 语句通过标签进行代码间的无条件跳转,同时 goto 语句在快速跳出循环、避免重复退出上也有一定的帮助,使用 goto 语句能简化一些代码的实现过程。 使用 goto 退出多层循环 下面这段代码在满足条件时,需要连续退出两层循环,使用传统的编码方式如下: 代码说明如下: 第 10 行,构建外循环。 第 13 行,构建内循环。 第 16 行,当 y==2 时需要退出所有的 for

  • Go 语言循环语句 Go 语言的 goto 语句可以无条件地转移到过程中指定的行。 goto语句通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。 但是,在结构化程序设计中一般不主张使用goto语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难。 语法 goto 语法格式如下: goto label; .. . label: statement; break 语句