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

错误更新变量[已关闭]

上官琦
2023-03-14

我想更新我的变量,我的代码有一个错误,我不知道在哪里我有错误

    String name = " "; 
    String family = " "; 
    int age = 0;
    Scanner input = new Scanner(System.in);


    int choise;
    while (true){
        System.out.println("1:Name  2:Family  3:Age ---- 0:Exit");
        choise = input.nextInt();
        if (choise == 0) break;
        else if (choise == 1){
            System.out.println("Please enter the name : ");
            name = input.nextLine();
        }
        else if (choise == 2){
            System.out.println("Please enter the family : ");
            family = input.nextLine();
        }
        else if (choise == 3){
            System.out.println("Please enter the age : ");
        }
    }

共有1个答案

姚海
2023-03-14

我试图在本地运行您的代码,发现了两个问题:

    null

这里清楚地描述了这个问题:Java扫描器不等待用户输入

问题是nextInt()不使用'\n',所以下一次调用nextLine()将使用它,然后等待读取y的输入

我的建议是将nextint()更改为nextline(),然后手动转换为int

choise = Integer.parseInt(input.nextLine());
 类似资料:
  • 我想更新我的变量,但我的代码有一个错误,我不知道哪里有错误

  • 问题内容: 我是编程新手,很难弄清楚这个错误: 这是整个程序。我敢肯定答案是非常简单的,但对于我的一生,我无法弄清楚。 问题答案: 该变量已被定义为循环的一部分。只需删除以下行:

  • 问题内容: jQuery的 我正在发出一个AJAX请求,该请求会使用服务器的响应来更新变量()的值。这是我正在使用的代码: 问题是的值仍然是一个空字符串。我知道这不是服务器端脚本的问题,因为我会收到错误警报,或者至少得到string 。 这是一个演示问题的JSFiddle:http : //jsfiddle.net/GGDX7/ 为什么不变的价值? 纯JS 我正在发出一个AJAX请求,该请求会使用

  • 问题内容: 第一个System.out打印 2 并且应该打印,而第二个System打印 65 。我已经用这种语言编程了一年多了,据我所知这是不可能发生的!有什么帮助吗? 上面的代码在两行上都显示 9 。 问题答案: 当你这样做,之前仅仅是一个参考阵列, NO 新阵列已创建并分配给。因此,当您查看自己的价值时,基本上就是查看的价值,反之亦然。只是的别名。这就是为什么在第二张照片中您得到65。 检查该

  • 问题内容: 我偶然发现了一个奇怪的问题,下面的代码无法编译: 错误(代码是linter推荐的代码)。: 注意,确实使用了该变量。 但是,如果我添加了else块-一切都会按预期编译: 这看起来像是编译器中的错误,还是一个已知问题?任何想法?(我正在使用go 1.11) 编辑:到目前为止的所有被告。按照:https : //golang.org/ref/spec#Short_variable_decl

  • 我创建了一个插入一系列唯一代码的postgres查询。如果一个代码是重复的,我运行以下代码。