Java实现简单学生信息管理系统

public class Student {
private String sno;
private String sname;
private String sdept;
Student(){}
public String getSno() {
return sno;
}
public void setSno(String sno) {
this.sno = sno;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getSdept() {
return sdept;
}
public void setSdept(String sdept) {
this.sdept = sdept;
}
}
public interface IStudentDAO {
abstract void insertStudent(int index,Student stu);
abstract void deleteStudent(String sno);
abstract void updateStudent(Student stu);
abstract Student findStudentBySno(String sno);
abstract void displayStudentBySno(String sno);
abstract void displayAllStudent();
}
import java.util.*;
public class StudentDAOImpl implements IStudentDAO{
StudentDAOImpl(){}
LinkedList<Student> mylist=new LinkedList<Student>();
public void insertStudent(int index,Student stu) {
System.out.println("请输入学生学号");
Scanner sca=new Scanner(System.in);
String s = sca.nextLine();
stu.setSno(s);
System.out.println("请输入学生姓名");
s=sca.next();
stu.setSname(s);
System.out.println("请输入学生部门");
s=sca.next();
stu.setSdept(s);
mylist.add(index,stu);
}
public void deleteStudent(String sno) {
mylist.remove(findStudentBySno(sno) );
}
public void updateStudent(Student stu) {
System.out.println("请输入学生新的学号");
Scanner sca=new Scanner(System.in);
String s = sca.nextLine();
stu.setSno(s);
System.out.println("请输入学生新的姓名");
s=sca.next();
stu.setSname(s);
System.out.println("请输入学生新的部门");
s=sca.next();
stu.setSdept(s);
}
public Student findStudentBySno(String sno) {
int i;
int index = 0;
boolean flag=false;
for(i=0;i<mylist.size();i++) {
if(sno.equals(mylist.get(i).getSno())) {
flag=true;
index=i;
}
}
if(flag==false) {
System.out.println("没有找到该学生");
return null;
}
else {
return mylist.get(index);
}
}
public void displayStudentBySno(String sno) {
Student student=findStudentBySno(sno);
System.out.println("学生学号为:"+student.getSno());
System.out.println("学生姓名为:"+student.getSname());
System.out.println("学生部门为:"+student.getSdept());
}
public void displayAllStudent() {
int i;
for(i=0;i<mylist.size();i++) {
System.out.println("第"+(i+1)+"名学生学号为:");
System.out.println(mylist.get(i).getSno());
System.out.println("第"+(i+1)+"名学生姓名为:");
System.out.println(mylist.get(i).getSname());
System.out.println("第"+(i+1)+"名学生部门为:");
System.out.println(mylist.get(i).getSdept());
}
}
}
import java.util.*;
public class MainClass {
static int menu(Scanner scanner) {
int choice = -1;
System.out.printf("\n");
System.out.printf("\t\t\t 学生信息管理系统功能菜单 \n");
System.out.printf("\t\t\t ======================= \n");
System.out.printf("\t\t\t 1.插入学生信息记录 \n");
System.out.printf("\t\t\t 2.删除学生信息记录 \n");
System.out.printf("\t\t\t 3.更新学生信息记录 \n");
System.out.printf("\t\t\t 4.显示所有学生信息记录 \n");
System.out.printf("\t\t\t 5.按学号查询指定学生信息 \n");
System.out.printf("\t\t\t 0.结束程序 \n");
System.out.printf("\t\t\t ======================= \n");
System.out.printf("\t\t\t 请输入您的选择: \n");
choice = scanner.nextInt();
return choice;
}
public static void main(String[] args) {
int menuChoice = -1;
Scanner scanner = new Scanner(System.in);
StudentDAOImpl op=new StudentDAOImpl();
do {
menuChoice = menu(scanner);
switch (menuChoice) {
case 1:
int input1;
System.out.println("请输入插入学生位置,第一个节点为0");
input1 = scanner.nextInt();
Student stu=new Student();
op.insertStudent(input1,stu);
break;
case 2:
System.out.println("请输入要删除的学生学号");
String input2 = scanner.next();
op.deleteStudent(input2);
break;
case 3:
System.out.println("请输入要修改更新的学生学号");
String input3 = scanner.next();
op.updateStudent(op.findStudentBySno(input3));
break;
case 4:
op.displayAllStudent();
break;
case 5:
System.out.println("请输入查询学生学号");
String input ;
input= scanner.next();
op.displayStudentBySno(input);
break;
}
} while (menuChoice != 0);
scanner.close();
}
}