实现内容
- 系统首页显示所有功能
- 添加功能
- 查询功能
- 删除功能
- 修改功能
/**
*@author Ben1002
*@version jdk1.8.0_131
*/
package it.Stu_mgr;
import java.util.Scanner;
import java.util.ArrayList;
public class Stu_mgr
{
public static void main(String[] args)
{
ArrayList<Stu> Array = new ArrayList <>();
while(true)
{
System.out.println("-------------------------------");
System.out.println("\t欢迎使用学生管理系统\t");
System.out.println("请选择功能");
System.out.println("1.增加学生数据");
System.out.println("2.查询学生数据");
System.out.println("3.删除学生数据");
System.out.println("4.修改学生数据");
System.out.println("5.退出系统");
Scanner sc = new Scanner(System.in);
int operate = sc.nextInt();
switch(operate)
{
case 1:
addStu(Array);
break;
case 2:
findStu(Array);
break;
case 3:
delStu(Array);
break;
case 4:
updStu(Array);
break;
case 5:
System.out.println("感谢您的使用!!");
return;
default:
System.out.println("选择有误请重新选择!!");
break;
}
}
}
//定义学生类,封装
public static class Stu
{
private String id;
private String name;
private int age;
public Stu(){}
public Stu(String id, String name, int age)
{
this.id = id;//学号
this.name = name;//姓名
this.age = age;//年龄
}
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 static void addStu(ArrayList<Stu> array)
{
Scanner sc = new Scanner(System.in);
String id;
while(true)
{
System.out.println("请输入学生学号");
id = sc.nextLine();
boolean panduan = used(array, id);
if(panduan)
System.out.println("该学号已存在,请重新输入!!");
else
break;
}
System.out.println("请输入学生姓名: ");
String name = sc.nextLine();
System.out.println("请输入学生年龄: ");
int age = sc.nextInt();
//创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
Stu s = new Stu();
s.setId(id);
s.setName(name);
s.setAge(age);
// 将学生对象添加到集合中
array.add(s);
System.out.println("添加学生数据成功!!");
}
public static boolean used(ArrayList<Stu> Array, String id)
{
//如果要添加的学号与集合中的某一个学生学号相同,返回true,如果都不相同,返回false
boolean panduan = false;
for (int i = 0; i < Array.size(); i++) {
Stu s = Array.get(i);
if (s.getId().equals(id)) {
panduan = true;
break;
}
}
return panduan;
}
//定义查询学生数据方法
public static void findStu(ArrayList<Stu> array)
{
//判断集合中是否有数据,如果没有显示提示信息
if (array.size() == 0)
{
System.out.println("无数据,请先添加数据后查询!!");
return;
}
System.out.println("学号\t姓名\t年龄\t");
//将集合中数据取出按照对应格式显示所有学生信息
for (int i = 0; i < array.size(); i++)
{
Stu s = array.get(i);
System.out.println(s.getId() + "\t" + s.getName() + "\t" + s.getAge() + "岁\t");
}
}
//定义删除学生数据方法
public static void delStu(ArrayList<Stu> array)
{
//键盘录入需要删除的学生学号,显示提示信息
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要删除的学生的学号: ");
String id = sc.nextLine();
//在删除学生数据操作前,对学号进行判断是否存在
int index = -1;
for (int i = 0; i < array.size(); i++) {
Stu s = array.get(i);
if (s.getId().equals(id)) {
index = i;
break;
}
}
if (index == -1)
{
System.out.println("该学生不存在,请重新输入!! ");
}
else
{
array.remove(index);
System.out.println("删除学生成功!!");
}
}
//定义修改学生数据方法
public static void updStu(ArrayList<Stu> array)
{
Scanner sc = new Scanner(System.in);
System.out.println("请输入需要修改数据的学生的学号: ");
String id = sc.nextLine();
int index = -1;
for (int i = 0; i < array.size(); i++)
{
Stu s1 = array.get(i);
if (s1.getId().equals(id))
{
index = i;
break;
}
}
//判断学号是否存在,存在则修改对应的学生数据,不存在则报错
if (index == -1)
{
System.out.println("该学生数据不存在,请重新输入!! ");
}
else
{
for (int i = 0; i < array.size(); i++)
{
Stu s2 = array.get(i);
//键盘录入要修改的学生数据
if (s2.getId().equals(id))
{
System.out.print("请输入学的新姓名: ");
String name = sc.nextLine();
System.out.print("请输入学的新年龄: ");
int age = sc.nextInt();
//创建学生对象
Stu s = new Stu();
s.setId(id);
s.setName(name);
s.setAge(age);
array.set(i, s);
break;
}
}
System.out.println("修改学生数据成功!!");
}
}
}
代码运行截图