一、建立学生类
学生类中应包含有学生的学号,姓名,年龄,生日
package com.itheima.pojo;
public class Student {
private String id;
private String name;
private int age;
private String birthday;
public Student() {
}
public Student(String id, String name, int age, String birthday) {
this.id = id;
this.name = name;
this.age = age;
this.birthday = birthday;
}
/**
* 获取
* @return id
*/
public String getId() {
return id;
}
/**
* 设置
* @param id
*/
public void setId(String id) {
this.id = id;
}
/**
* 获取
* @return name
*/
public String getName() {
return name;
}
/**
* 设置
* @param name
*/
public void setName(String name) {
this.name = name;
}
/**
* 获取
* @return age
*/
public int getAge() {
return age;
}
/**
* 设置
* @param age
*/
public void setAge(int age) {
this.age = age;
}
/**
* 获取
* @return birthday
*/
public String getBirthday() {
return birthday;
}
/**
* 设置
* @param birthday
*/
public void setBirthday(String birthday) {
this.birthday = birthday;
}
}
二、创建学生管理类
下面的代码实现了增加,删除,改变,查找功能
package com.itheima.oop;
import com.itheima.pojo.Student;
import java.util.ArrayList;
import java.util.Scanner;
public class StudentTest {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
ArrayList<Student> list = new ArrayList<>();
lo:
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 choice = in.nextInt();
switch (choice){
case 1:addstudentinfo(list);
break;
case 2:removestudentinfo(list);
break;
case 3:setstudentinfo(list);
break;
case 4:getstudentinfo(list);
break;
case 5:System.out.println("退出管理系统");
break lo;
default: System.out.println("您的输入有误");
}
}
}
//查找学生信息
private static void getstudentinfo(ArrayList<Student> list) {
if(list.size()==0){
System.out.println("没有改学生信息");
}else {
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
System.out.println(stu.getId()+"---"+stu.getName()+"---"+stu.getAge()+"---"+stu.getBirthday());
}
}
}
//改变学生信息
private static void setstudentinfo(ArrayList<Student> list) {
//键盘录入要改变学生信息的学号
Scanner in=new Scanner(System.in);
System.out.println("请输入你的学号");
String id = in.nextLine();
//调用getindex方法,查找集合在学号中的索引
int index = getindex(id, list);
//判断学号对应索引是否有
if(index==-1){
System.out.println("没有查找到相关学生");
}else {
System.out.println("请输入新的姓名");
String name = in.next();
System.out.println("请输入新的年龄");
int age = in.nextInt();
System.out.println("请输入新的生日");
String birthday = in.next();
Student stu=new Student(id,name,age,birthday);
list.set(index,stu);
System.out.println("修改成功");
}
}
//删除学生信息
private static void removestudentinfo(ArrayList<Student> list) {
//键盘录入要删除的学号
Scanner in=new Scanner(System.in);
System.out.println("请输入你的学号");
String id = in.nextLine();
//调用getindex方法,查找集合在学号中的索引
int index = getindex(id, list);
//判断学号对应索引是否有
if(index==-1){
System.out.println("没有查找到相关学生");
}else {
list.remove(index);
System.out.println("删除成功");
}
}
//查找索引
private static int getindex(String id,ArrayList<Student> list){
for (int i=0;i<list.size();i++){
Student stu = list.get(i);
if(stu.getId().equals(id)){
return i;
}
}
return -1;
}
//添加学生信息功能
private static void addstudentinfo(ArrayList<Student> list) {
Scanner in=new Scanner(System.in);
String id="";
while (true) {
System.out.println("请输入学生学号");
id = in.next();
int index = getindex(id, list);
if (index == -1) {
//可以使用
break;
} else System.out.println("您输入的学号重复");
}
System.out.println("请输入学生姓名");
String name = in.next();
System.out.println("请输入学生年龄");
int age = in.nextInt();
System.out.println("请输入学生生日");
String birthday = in.next();
Student stu=new Student(id,name,age,birthday);
list.add(stu);
System.out.println("添加成功");
}
}