Student类
package com.itheima.studentsystem;
public class Student {
private String id;
private String name;
private int age;
private String address;
public Student() {
}
public Student(String id, String name, int age, String address) {
this.id = id;
this.name = name;
this.age = age;
this.address = address;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
User类
package com.itheima.studentsystem;
public class User {
private String username;
private String password;
private String id;
private String phone;
public User() {
}
public User(String username, String mima, String id, String phone) {
this.username = username;
this.password = mima;
this.id = id;
this.phone = phone;
}
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 getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}
package com.itheima.studentsystem;
import java.util.ArrayList;
import java.util.Scanner;
public class StudentSystem {
private static final int ADD_STUDENT=1;
private static final int DELETE_STUDENT=2;
private static final int UPDATE_STUDENT=3;
private static final int FIND_STUDENT=4;
private static final int EXIT=5;
public static void main(String[] args) {
ArrayList<Student> stu=new ArrayList<>();
Scanner sc=new Scanner(System.in);
ArrayList<User> user=new ArrayList<>();
init(user);
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("请输入你的选择:");
int select=sc.nextInt();
switch(select){
case ADD_STUDENT:
addstudent(stu);
break;
case DELETE_STUDENT:
deletestudent(stu);
break;
case UPDATE_STUDENT:
updatestudent(stu);
break;
case FIND_STUDENT:
findstudent(stu);
break;
case EXIT:
System.out.println("欢迎下次使用!");
System.exit(0);
}
}
}
public static void init(ArrayList<User> user){
Scanner sc=new Scanner(System.in);
System.out.println("--------欢迎进入学生管理系统!---------");
System.out.println("1 注册");
System.out.println("2 登录");
System.out.println("3 忘记密码");
System.out.println("4 退出");
System.out.println("请输入你的选择:");
int se=sc.nextInt();
switch (se) {
case 1:
register(user);
break;
}
}
public static void register(ArrayList<User> user){
Scanner sc=new Scanner(System.in);
User u=new User();
while(true){
String name=sc.next();
boolean flag=userNameCheck(user,name);
if(flag){
if(userIsUsed(user,name)) {
System.out.println("该用户名已被使用,请重新输入:");
continue;
}
u.setUsername(name);
String password=sc.next();
}
else{
System.out.println("用户名格式错误,请重新输入:");
continue;
}
}
}
public static boolean userNameCheck(ArrayList<User> user,String name){
if(name.length()<3||name.length()>15)
return false;
for (int i = 0; i < name.length(); i++) {
char a=name.charAt(i);
if(!((a>='a'&&a<='z')||(a>='A'&&a<='Z')||(a>='0'&&a<='9'))) {
return false;
}
}
int cout=0;
for (int i = 0; i < name.length(); i++) {
char a=name.charAt(i);
if((a>='a'&&a<='z')||(a>='A'&&a<='Z')) {
cout++;
break;
}
}
return cout>0;
}
public static boolean userIsUsed(ArrayList<User> user,String id){
for (int i = 0; i < user.size(); i++) {
String str=user.get(i).getId();
if(str.equals(id)){
return true;
}
}
return false;
}
public static void addstudent(ArrayList<Student> stu){
Scanner sc=new Scanner(System.in);
Student s=new Student();
System.out.println("请输入学号:");
while(true){
String id=sc.next();
boolean flag=isUsed(stu,id);
if(!flag){
s.setId(id);
break;
}
System.out.println("学号重复,请重新输入:");
}
System.out.println("请输入名字:");
s.setName(sc.next());
System.out.println("请输入年龄:");
s.setAge(sc.nextInt());
System.out.println("请输入地址:");
s.setAddress(sc.next());
stu.add(s);
System.out.println("添加成功!");
}
public static void deletestudent(ArrayList<Student> stu){
Scanner sc=new Scanner(System.in);
System.out.println("请输入要删除的学号:");
boolean flag=true;
while(flag) {
String id = sc.next();
for (int i = 0; i < stu.size(); i++) {
String str = stu.get(i).getId();
if (str.equals(id)) {
stu.remove(i);
System.out.println("删除成功!");
flag=false;
}
}
if(flag)
System.out.println("用户不存在,请重新输入:");
}
}
public static void updatestudent(ArrayList<Student> stu){
Scanner sc=new Scanner(System.in);
System.out.println("请输入修改学号:");
boolean flag=true;
while(flag) {
String id = sc.next();
for (int i = 0; i < stu.size(); i++) {
String str=stu.get(i).getId();
if(str.equals(id)){
System.out.println("请输入学号:");
stu.get(i).setId(sc.next());
System.out.println("请输入名字:");
stu.get(i).setName(sc.next());
System.out.println("请输入年龄:");
stu.get(i).setAge(sc.nextInt());
System.out.println("请输入地址:");
stu.get(i).setAddress(sc.next());
flag=false;
}
}
if(flag)
System.out.println("用户不存在,请重新输入:");
}
System.out.println("修改成功!");
}
public static void findstudent(ArrayList<Student> stu){
//判定集合中是否有数据,如果没有显示提示信息
if (stu.size() == 0){
System.out.println("无信息!请添加信息后查询。");
return;
//为了让程序不再往下执行,给出return;
}
//显示表头信息
//\t其实就是tab建的位置
System.out.println("学号\t\t姓名\t年龄\t居住地");
//将集合中数据取出按照对应格式显示学生信息,年龄显示补充“岁”
for (int i = 0; i < stu.size(); i++) {
Student s = stu.get(i);
System.out.println(s.getId() + "\t" + s.getName() + "\t" + s.getAge() + "岁\t" + s.getAddress());
}
}
public static boolean isUsed(ArrayList<Student> stu,String id){
for (int i = 0; i < stu.size(); i++) {
String str=stu.get(i).getId();
if(str.equals(id)){
return true;
}
}
return false;
}
}