Java 用户管理系统:包含闰年判断和基本操作
以下是使用 Java 制作的简单用户管理系统,包括对出生年月日的判断,以及对用户信息的增删改查等基本操作。
import java.util.ArrayList;
import java.util.Scanner;
public class UserManagementSystem {
private ArrayList<User> userList; // 用户列表
public UserManagementSystem() {
userList = new ArrayList<>();
}
// 注册新用户
public void register() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入用户名:");
String username = sc.nextLine();
System.out.print("请输入密码:");
String password = sc.nextLine();
System.out.print("请输入出生年份:");
int year = sc.nextInt();
// 判断是否存在2月29日
boolean isLeapYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
if (isLeapYear) {
System.out.print("该年存在2月29日,请输入出生月份和日期(格式:MM-DD):");
} else {
System.out.print("该年不存在2月29日,请输入出生月份和日期(格式:MM-DD,日期不能为29):");
}
String birth = sc.next();
// 创建新用户并添加到列表中
User newUser = new User(username, password, year, birth);
userList.add(newUser);
System.out.println("注册成功!");
}
// 删除用户
public void deleteUser() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入要删除的用户名:");
String username = sc.nextLine();
// 查找用户并删除
for (int i = 0; i < userList.size(); i++) {
User user = userList.get(i);
if (user.getUsername().equals(username)) {
userList.remove(i);
System.out.println("删除成功!");
return;
}
}
System.out.println("该用户不存在!");
}
// 修改用户密码
public void changePassword() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入要修改密码的用户名:");
String username = sc.nextLine();
// 查找用户并修改密码
for (int i = 0; i < userList.size(); i++) {
User user = userList.get(i);
if (user.getUsername().equals(username)) {
System.out.print("请输入新密码:");
String newPassword = sc.nextLine();
user.setPassword(newPassword);
System.out.println("修改密码成功!");
return;
}
}
System.out.println("该用户不存在!");
}
// 查找用户
public void searchUser() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入要查找的用户名:");
String username = sc.nextLine();
// 查找用户并输出信息
for (int i = 0; i < userList.size(); i++) {
User user = userList.get(i);
if (user.getUsername().equals(username)) {
System.out.println("用户名:" + user.getUsername());
System.out.println("出生日期:" + user.getYear() + "-" + user.getBirth());
return;
}
}
System.out.println("该用户不存在!");
}
// 显示用户列表
public void showUserList() {
if (userList.size() == 0) {
System.out.println("当前用户列表为空!");
} else {
System.out.println("当前用户列表:");
for (int i = 0; i < userList.size(); i++) {
User user = userList.get(i);
System.out.println(user.getUsername() + "(" + user.getYear() + "-" + user.getBirth() + ")");
}
}
}
public static void main(String[] args) {
UserManagementSystem system = new UserManagementSystem();
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请选择操作:");
System.out.println("1. 注册新用户");
System.out.println("2. 删除用户");
System.out.println("3. 修改用户密码");
System.out.println("4. 查找用户");
System.out.println("5. 显示用户列表");
System.out.println("6. 退出");
int choice = sc.nextInt();
sc.nextLine(); // 读取多余的换行符
switch (choice) {
case 1:
system.register();
break;
case 2:
system.deleteUser();
break;
case 3:
system.changePassword();
break;
case 4:
system.searchUser();
break;
case 5:
system.showUserList();
break;
case 6:
System.exit(0);
default:
System.out.println("无效的操作,请重新选择!");
}
System.out.println();
}
}
}
class User {
private String username; // 用户名
private String password; // 密码
private int year; // 出生年份
private String birth; // 出生月份和日期
public User(String username, String password, int year, String birth) {
this.username = username;
this.password = password;
this.year = year;
this.birth = birth;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
public int getYear() {
return year;
}
public String getBirth() {
return birth;
}
public void setPassword(String password) {
this.password = password;
}
}
原文地址: https://www.cveoy.top/t/topic/nFPi 著作权归作者所有。请勿转载和采集!