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.注册" + "\t" + "2.登录" + "\t" + "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() + "\t" + "密码:" + userArray[x].getPassword()
+ "\t" + "生日:" + userArray[x].getBirthday() + "\t" + "爱好" + userArray[x].getHobby());
return; //同上
}
}
System.out.println("用户名或密码错误!");
} }

控制台输出内容

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

上一篇:环境部署(七):linux下Jenkins+Git+JDK持续集成


下一篇:hdu 5833 Zhu and 772002 高斯消元