zoukankan      html  css  js  c++  java
  • Day_09【常用API】扩展案例1_程序中使用一个长度为3的对象数组,存储用户的登录名和密码……

    需求说明:实现用户注册、登陆功能;

    •   1.程序中使用一个长度为3的**对象数组**,存储用户的登录名和密码:
        	例如如下格式:
        		登录名    	密码      生日           爱好
        		zhangsan	1111	1998-03-15		旅游,唱歌
        		lisi		2222	2002-05-20		吃饭,睡觉,打豆豆
        		wangwu		3333	2001-07-28		看书,看电影,旅游
        	注册时,要判断数组是否已满,是:则禁止注册。
        	
        2.**循环**为用户列出菜单:
        	①注册     ②登陆     ③退出
        	
        3.用户选择①,调用:registe()方法,执行注册流程;
        	用户选择②,调用:login()方法,执行登录流程;
        	用户选择③,结束程序;
        	
        4.编写方法:**registe()**,执行注册流程:
        	要求用户输入以下信息(信息无需校验):
        		用户名:
        		登录密码:
        		出生日期:
        		爱好:(多个爱好中间用逗号(中英文都可以)隔开)
        		
        5.编写方法:**login()**,执行登陆流程:
        	请用户输入登录名、登陆密码;
        	使用登录名和密码进行验证;
        		通过:打印:这个用户的所有信息;
        		未通过:打印:用户名或密码错误!
      
    package com.itheima;
    
    //用户信息类
    public class User {
    	private String username;
    	private String password;
    	private String birthday;
    	private String hobby;
    	
    	public User() {}
    	
    	public User(String username,String password,String birthday,String hobby) {
    		this.username = username;
    		this.password = password;
    		this.birthday = birthday;
    		this.hobby = hobby;
    	}
    
    	public String getUsername() {
    		return username;
    	}
    
    	public void setUsername(String username) {
    		this.username = username;
    	}
    
    	public String getPassword() {
    		return password;
    	}
    
    	public void setPassword(String password) {
    		this.password = password;
    	}
    
    	public String getBirthday() {
    		return birthday;
    	}
    
    	public void setBirthday(String birthday) {
    		this.birthday = birthday;
    	}
    
    	public String getHobby() {
    		return hobby;
    	}
    
    	public void setHobby(String hobby) {
    		this.hobby = hobby;
    
    package com.itheima;
    
    import java.util.Scanner;
    
    public class Test1 {
    	// 定义一个存储用户登录名和密码,长度为3的对象数组
    	private static User[] userArray = new User[3]; // 没讲过
    	private static int index = 0; // 没讲过
    
    	public static void main(String[] args) {
    		// 创建键盘录入对象
    		Scanner sc = new Scanner(System.in);
    		while (true) {
    			System.out.println("1.注册" + "	" + "2.登录" + "	" + "3.退出");
    			int select = sc.nextInt();
    			switch (select) {
    			case 1:
    				registe();
    				break;
    			case 2:
    				login();
    				break;
    			case 3:
    				System.out.println("感谢使用,再见");
    				System.exit(0);
    			default:
    				break;
    			}
    		}
    
    	}
    
    	// 注册方法
    	public static void registe() {
    		// 先验证用户是否已满
    		if (index >= userArray.length) {
    			System.out.println("用户已满,禁止注册");
    			return; // 不太明白为什么不能用else
    		}
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入您的用户名:");
    		String userName = sc.nextLine();
    
    		System.out.println("请输入您的登录密码:");
    		String password = sc.nextLine();
    
    		System.out.println("请输入您的生日:");
    		String birthday = sc.nextLine();
    
    		System.out.println("请输入您的爱好(多个爱好中间用逗号隔开):");
    		String hobby = sc.nextLine();
    
    		// 将数据输入到数组
    		User user = new User(userName, password, birthday, hobby);
    		userArray[index] = user; // 不太明白
    		// 将索引增加1,以便下一次储存
    		index++; // 不太明白
    		System.out.println("注册成功");
    
    	}
    
    	// 登录方法
    	public static void login() {
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入您的用户名:");
    		String userName = sc.nextLine();
    
    		System.out.println("请输入您的密码");
    		String password = sc.nextLine();
    		// 使用登录名和密码进行验证
    		for (int x = 0; x < userArray.length; x++) {
    			if (userName.equals(userArray[x].getUsername()) && password.equals(userArray[x].getPassword())) {
    				System.out.println("登录成功,以下是您的个人信息");
    				System.out.println("用户名:" + userArray[x].getUsername() + "	" + "密码:" + userArray[x].getPassword()
    						+ "	" + "生日:" + userArray[x].getBirthday() + "	" + "爱好" + userArray[x].getHobby());
    				return;									//同上
    			}
    		}
    		System.out.println("用户名或密码错误!");
    	}
    
    }
    
    

    控制台输出内容
    控制台输出内容

  • 相关阅读:
    Leetcode Best Time to Buy and Sell Stock II
    Leetcode Shortest Word Distance III
    Leetcode Shortest Word Distance II
    Leetcode Shortest Word Distance
    牛客多校第四场 J Free 最短路
    牛客多校第四场 A meeting 树的半径
    hdu多校第二场1008(hdu6598) Harmonious Army 最小割
    hdu多校第二场1011 (hdu6601) Keen On Everything But Triangle 主席树
    hdu多校第二场 1010 (hdu6600)Just Skip This Problem
    hdu多校第二场 1005 (hdu6595) Everything Is Generated In Equal Probability
  • 原文地址:https://www.cnblogs.com/zzzsw0412/p/12772541.html
Copyright © 2011-2022 走看看