夜凉遗梦⌒ 2021-01-15 12:13 采纳率: 100%
浏览 130
已采纳

for循环中加入has判断 就挑跳不出来了,怎么解决?

for循环中加入has判断 就挑跳不出来了,求大佬解答
下面是代码

package shopping;

import java.util.Scanner;

public class jieMian {
    public static void main(String[] args) {
        denglu();

    }

    public static void denglu() {
        //声明
        String name = "admin";
        int num = 123;
        int a;
        System.out.println("\t\t欢迎使用我行我素购物管理系统!");
        System.out.println("\t\t1.登录系统");
        System.out.println("\t\t2.退出");
        System.out.println("***************************************");
        Scanner input = new Scanner(System.in);
        for (; ; ) {
            System.out.println("请选择,输入数字:");
            if (input.hasNextInt()) {
                a = input.nextInt();
                if (a == 1) {
                    for (; ; ) {
                        System.out.println("请输入账号:");
                        String name1 = input.next();
                        System.out.println("请输入密码:");
                        int num1 = input.nextInt();
                        if (name1.equals(name) && num1 == num) {
                            break;
                        } else {
                            System.out.println("用户名密码错误,请重新输入!");
                        }
                    }
                    break;
                } else if (a == 2) {
                    System.out.println("欢迎下次光临!");
                    break;
                } else {
                    System.out.println("输入错误,请重新输入!");
                }
            } else {
                System.out.println("输入错误,请重新输入!");
                continue;
            }
        }
    }
}
  • 写回答

5条回答 默认 最新

  • 被风吹过的回忆 2021-01-15 13:42
    关注

    通过断点调试是可以看出这个问题,如果想继续输入,可以在改成这种方式

           else {
                    System.out.println("输入错误,请重新输入!");
                 
                    input = new Scanner(System.in);
                    continue;
                }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号