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

Java初学者:nextLine问题,同时和if循环错误

包嘉懿
2023-03-14

大家好,我三天前开始使用Java,我正在做一个小的银行账户项目,向用户询问他们的姓名和余额,并根据输入打印出一些消息。我的问题始于尝试验证用户名是否正确。不管怎样这是密码

//代码启动包com。首领

导入java.util.扫描仪;

公共课主课{

public static void main(String[] args) {

    int minAmount = 500;

    Scanner userInput = new Scanner(System.in);
    /* String verifyName = "Yes";*/

    System.out.println("Please enter your Account Name and Balance");
    System.out.println("Account Name: ");


    //Username here
    String userName = userInput.nextLine();
    System.out.println("Balance: ");

    //Account balance here
    double balance = userInput.nextDouble();
    System.out.println("Account Name: " + userName);


    // Verification
    System.out.println("Please verify your username, enter Yes to accept or No to cancel");
    String verifyName = userInput.nextLine();

    while (verifyName.equals("Yes")) {
        if (balance < 500) {
            System.out.println("Your balance is below the minimum requirement of " + minAmount + " please top up");
            System.out.println("Thank you for banking with King Solomon Bank");
            }
        if (balance > 500){
            System.out.println("Good");
        }
    } 
}

}

程序在要求用户输入是或否后终止,但我认为它在我第一次尝试时就起作用了。所以我不能输入那个字符串

此外,我在使用verifyName的输入来运行while和if循环时遇到了问题。非常感谢您的帮助。谢谢

共有1个答案

扈阳辉
2023-03-14

需要以下修复:

    String verifyName = userInput.next(); // not nextLine()!

    if (verifyName.equalsIgnoreCase("Yes")) {  // you get to endless loop here, use case-insensitive comparison
 类似资料:
  • 每次我输入东西时,这段代码都会循环。如何修复它? 这是整个事情的截图:

  • 这里是Uni learning Python编程入门课程的初学者。直到我明白了大部分,现在我很困惑。 有人能解释为什么这会产生它输出的模式吗? 外循环触发器和() 然后内部循环触发器和() 然后它不会打印(6),因为

  • 这里的主要错误是do-while循环不会退出。该计划的前提是从一个行星跳到另一个行星,而planetName是目的地,current是您当前所在的行星。我想要的是当电流为“Io”时退出循环。每次“跳转”到另一个行星后,目的地即成为当前行星。我已经测试过了,当电流在 然而,循环仍在继续。

  • 我是一个非常初级的程序员,正在上暑期班。因此,请轻松使用代码。我需要创建一个投资应用程序,计算2500美元的投资如果以每年7.5%的复利计算,需要多少年才能达到至少5000美元的价值。顺便说一下,我不知道什么是for循环。我只是想不出如何处理循环,不是方程式而是循环。请帮忙!! 这就是我目前所拥有的。

  • 你好我已经想尽一切办法弄清楚为什么返回语句没有被识别。如果我把“回报余额”放在其他地方,它会说系统。出来无法访问println。。。你们谁能帮我解释一下为什么这可能不起作用??非常感谢。

  • 本文向大家介绍Java初学者常问的问题(推荐),包括了Java初学者常问的问题(推荐)的使用技巧和注意事项,需要的朋友参考一下 本文介绍一些Java初学者常问的问题,可以用%除以一个小数吗? a += b 和 a = a + b 的效果有区别吗? 声明一个数组为什么需要花费大量时间? 为什么Java库不用随机pivot方式的快速排序? 基本数据类型 Q. 为什么 -0/3 结果是 0,而 -0.0