weixin_57253933 2021-05-23 09:45 采纳率: 25%
浏览 47
已采纳

JAVA可以调用循环体里用Scanner输入的数据么?

public static void main(String []args) {
            Scanner sc=new Scanner(System.in);
            System.out.println("注册一个账户 请首先设置你的账户名");
            String a=sc.next();
            a=a.trim();
            System.out.println("请注册一个长度7到16位的密码");
           int xunhuan=3;
            while(xunhuan>=0) {
                String p=sc.next();   想调用这个输入的数据 到循环外
                int changdu=p.length();//获取密码的长度
            if(changdu>=7&&changdu<=16) {
                System.out.println("正确复合规范");
                break;
            }else {
                System.out.println("密码不符合规范");
                if(xunhuan==0) {
                    System.out.println("终止");
                    return;    
            }        System.out.println("你还有"+xunhuan+"重新输入的机会");
                xunhuan--;
                }
            
            }
            System.out.println("请输入你之前注册账户名");
            String c=sc.next();
            if(a.equals(c)) {
                System.out.println("查询有此账户名"+"\t");
                System.out.print("请输入密码");
            }else {
                System.out.println("无此账户");
                return;
            }
            String d=sc.next();
            if(p.equals(e)) {          在编译的软件报错  无法调用
            
            }
            
            
            }}

  • 写回答

2条回答 默认 最新

  • 关注

    循环体里可以用Scanner输入数据

    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		System.out.println("注册一个账户 请首先设置你的账户名");
    		String a = sc.next();
    		a = a.trim();
    		System.out.println("请注册一个长度7到16位的密码");
    		int xunhuan = 3;
    		String p="";
    		while (xunhuan >= 0) {
    			p = sc.next(); // 想调用这个输入的数据 到循环外
    			int changdu = p.length();// 获取密码的长度
    			if (changdu >= 7 && changdu <= 16) {
    				System.out.println("正确复合规范");
    				break;
    			} else {
    				System.out.println("密码不符合规范");
    				if (xunhuan == 0) {
    					System.out.println("终止");
    					return;
    				}
    				System.out.println("你还有" + xunhuan + "重新输入的机会");
    				xunhuan--;
    			}
    
    		}
    		System.out.println("请输入你之前注册账户名");
    		String c = sc.next();
    		if (a.equals(c)) {
    			System.out.println("查询有此账户名" + "\t");
    			System.out.print("请输入密码");
    		} else {
    			System.out.println("无此账户");
    			return;
    		}
    		String d = sc.next();
    		if (p.equals(d)) { // 在编译的软件报错 无法调用
    
    		}
    
    	}
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 51单片机使lcd显示器开机闪烁预设字符闪烁3次需要加什么代码
  • ¥50 C# 使用DEVMOD设置打印机首选项
  • ¥15 麒麟V10 arm安装gdal
  • ¥15 想用@vueuse 把项目动态改成深色主题,localStorge里面的vueuse-color-scheme一开始就给我改成了dark,不知道什么原因(相关搜索:背景颜色)
  • ¥20 OPENVPN连接问题
  • ¥15 flask实现搜索框访问数据库
  • ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备
  • ¥100 如何用js写一个游戏云存档
  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题