java实现学生管理系统(集合ArrayList实现)
文章目录
- 一、功能需求
- 二、代码框架
- 三、代码
- 1.学生类 Student.java
- 2.学生管理类 StudentManage.java
- 3.主程序 StudentMain.java
- 四、运行结果
- 1.添加学生功能
- 2.查找学生功能
- 3.根据编号更新学生基本信息功能
- 4.根据学生编号删除学生功能
- 5.根据学生编号录入学生各门成绩
- 6.退出系统
一、功能需求
case 10:添加学生
case 11:查找一个学生
case 12:根据编号更新学生基本信息
case 13:根据编号删除学生
case 14:根据编号录入成绩
case 99:退出系统
二、代码框架
一共有三个文件:
1、Student.java(学生类) //学生的基本信息
2、StudentManage.java(学生管理类) //用于对学生集合操作
3、StudentMain.java(主程序)
三、代码
下面为具体的代码:
1.学生类 Student.java
package com.studentlist.test;
/**
* 学生类
*/
public class Student {
private int number;
private String name;
private int age;
private int python;
private int java;
private int linux;
private int sql;
private int sum;
private double avg;
Student(int number ,String name,int age){
this.number=number;
this.name=name;
this.age=age;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
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 int getPython() {
return python;
}
public void setPython(int python) {
this.python = python;
}
public int getJava() {
return java;
}
public void setJava(int java) {
this.java = java;
}
public int getLinux() {
return linux;
}
public void setLinux(int linux) {
this.linux = linux;
}
public int getSql() {
return sql;
}
public void setSql(int sql) {
this.sql = sql;
}
public int getSum() {
return sum;
}
public void setSum() {
this.sum = this.python+this.java+this.linux+this.sql;
}
public double getAvg() {
return avg;
}
public void setAvg() {
this.avg = (double)this.sum/4;
}
public String toString(){
String msg="\t\t"+this.number+"\t\t"+this.name+"\t\t"+this.age+"\t\t"+this.python
+"\t\t"+this.java+"\t\t"+this.linux+"\t\t"+this.sql+"\t"+this.sum+"\t"+this.avg;
return msg;
}
}
2.学生管理类 StudentManage.java
package com.studentlist.test;
import java.util.ArrayList;
/**
* 学生管理类,实现增删改查
*/
public class StudentManage {
private ArrayList al=null;
String msg="\t\t学号\t\t姓名\t\t年龄\t\tpython\tjava\tlinux\tsql\tsum\tavg";
StudentManage(){
al=new ArrayList();
}
public void menu(){
System.out.println("-----请选择你要执行的功能-----");
System.out.println("10:添加一个学生");
System.out.println("11:查找一个学生");
System.out.println("12:根据学号更新学生基本信息");
System.out.println("13:根据学号删除学生");
System.out.println("14:根据学生编号输入学生各门成绩");
System.out.println("99:退出系统");
System.out.println("----------------------------");
}
//显示所有学生信息
public void showStu(){
if(al.size()==0) {
System.out.println("没有学生");
}else{
System.out.println("一共有"+al.size()+"个学生");
System.out.println(msg);
for (int i = 0; i < al.size(); i++) {
Student stu = (Student) al.get(i);
System.out.println(stu);
}
}
}
//10:添加一个学生
public void addStu(Student stu){
al.add(stu);
System.out.println("添加学生成功");
showStu();
}
//11:查找一个学生
public void selectStu(int num){
boolean flag=false;
for(int i=0;i<al.size();i++){
Student stu=(Student)al.get(i);
if(stu.getNumber()==num){
flag=true;
System.out.println(msg);
System.out.println(stu);
return;
}
}
if(flag==false){
System.out.println("没有这个学号的学生");
}
}
//12:根据学号更新学生基本信息
public void updateStu(int number,String name,int age){
boolean flag=false;
for(int i=0;i<al.size();i++){
Student stu=(Student)al.get(i);
if(stu.getNumber()==number){
flag=true;
stu.setName(name);
stu.setAge(age);
System.out.println("学生信息更新成功");
showStu();
return;
}
}
if(flag==false){
System.out.println("没有这个学号的学生");
}
}
//13:根据学号删除学生
public void deleteStu(int num){
boolean flag=false;
for(int i=0;i<al.size();i++){
Student stu=(Student)al.get(i);
if(stu.getNumber()==num){
flag=true;
al.remove(i);
System.out.println("学生删除成功");
showStu();
return;
}
}
if(flag==false){
System.out.println("没有这个学号的学生");
}
}
//14:根据学生编号输入学生各门成绩
public void input(int number,int python,int java,int linux,int sql){
boolean flag=false;
for(int i=0;i<al.size();i++){
Student stu=(Student)al.get(i);
if(stu.getNumber()==number){
flag=true;
stu.setPython(python);
stu.setJava(java);
stu.setLinux(linux);
stu.setSql(sql);
stu.setSum();
stu.setAvg();
System.out.println("学生成绩录入成功");
showStu();
return;
}
}
if(flag==false){
System.out.println("没有这个学号的学生");
}
}
}
3.主程序 StudentMain.java
package com.studentlist.test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
* 主类
*/
public class StudentMain {
public static void main(String[] args) throws Exception{
StudentManage manage=new StudentManage();
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
while (true){
manage.menu();
int no=Integer.parseInt(bf.readLine());
switch (no){
case 10://10:添加学生
System.out.println("请输入学号");
int num=Integer.parseInt(bf.readLine());
System.out.println("请输入姓名");
String name=bf.readLine();
System.out.println("请输入年龄");
int age=Integer.parseInt(bf.readLine());
Student stu=new Student(num,name,age);
manage.addStu(stu);
break;
case 11://11:查找学生
System.out.println("请输入你要查找的学号");
int num1=Integer.parseInt(bf.readLine());
manage.selectStu(num1);
break;
case 12://12:更新学生信息
System.out.println("请输入你要更新的学生的学号");
int num2=Integer.parseInt(bf.readLine());
System.out.println("请输入新的姓名");
String name2=bf.readLine();
System.out.println("请输入新的年龄");
int age2=Integer.parseInt(bf.readLine());
manage.updateStu(num2,name2,age2);
break;
case 13://13:根据学号删除学生
System.out.println("请输入删除的学生的学号");
int num3=Integer.parseInt(bf.readLine());
manage.deleteStu(num3);
break;
case 14://14:根据学生编号输入学生各门成绩
System.out.println("请输入学号");
int num4=Integer.parseInt(bf.readLine());
System.out.println("请输入python成绩");
int python=Integer.parseInt(bf.readLine());
System.out.println("请输入java成绩");
int java=Integer.parseInt(bf.readLine());
System.out.println("请输入Linux成绩");
int linux=Integer.parseInt(bf.readLine());
System.out.println("请输入sql成绩");
int sql=Integer.parseInt(bf.readLine());
manage.input(num4,python,java,linux,sql);
break;
case 99://99:退出系统
System.exit(0);
break;
default:
System.out.println("请重新输入");
}
}
}
}
还没有评论,来说两句吧...