先定义一个学生类
package org.example;
public class Student {
int id;
String name;
int age;
public Student() {
}
public Student(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int 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;
}
@Override
public String toString() {
return "Student{" +
"id=" + id +
", name=" + name +
", age=" + age +
'}';
}
}
在测试类中写方法,并实现增删改查
package org.example;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class Main {
static ArrayList<Student> list = new ArrayList<>();
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
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)退出系统----------");
int i = sc.nextInt();
switch (i) {
case 1:
System.out.println("请输入要添加学生的信息");
add();
break;
case 2:
System.out.println("请输入需删除学生的id");
delete();
break;
case 3:
System.out.println("请输入需修改学生的id");
update();
break;
case 4:
System.out.println("请输入需查询学生的id");
query();
break;
case 5:
System.out.println("已退出学生信息管理系统");
return;
default:
System.out.println("请输入1-5之间的数字来选择功能");
break;
}
}
}
public static void add() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入需添加学生的id:");
int id = sc.nextInt();
System.out.print("请输入需添加学生的name:");
String name = sc.next();
System.out.print("请输入需添加学生的age:");
int age = sc.nextInt();
for (Student student : list) {
if (id == student.getId()) {
System.out.println("id已存在,不能重复添加!");
return;
}
}
Student student = new Student(id, name, age);
list.add(student);
System.out.println(list.toString());
}
public static void delete() {
Scanner sc = new Scanner(System.in);
System.out.println("当前共" + list.size() + "条数据");
System.out.print("请输入需删除学生的id:");
int i = sc.nextInt();
if (list.size() < 1) {
System.out.println("无可删除数据,请添加后操作!");
return;
}
int count = 0;
for (int i1 = list.size() - 1; i1 >= 0; i1--) {
int id = list.get(i1).getId();
if (i == id) {
list.remove(i1);
}
}
}
public static void update() {
Scanner sc = new Scanner(System.in);
int id = sc.nextInt();
System.out.print("请输入需修改学生的姓名:");
String name = sc.next();
System.out.print("请输入需修改学生的年龄");
int age = sc.nextInt();
int count = 0;
for (Student student : list) {
if (student.getId() == id) {
student.setName(name);
student.setAge(age);
count++;
}
}
if (count>0){
System.out.println("修改成功");
}else {
System.out.println("未查找到需修改学生的数据!");
}
}
public static void query(){
Scanner sc = new Scanner(System.in);
int id = sc.nextInt();
for(Student student: list){
if(student.getId() == id){
System.out.println("id的为"+id+"学生的数据为"+student);
return;
}
}
System.out.println("未查询到id为"+id+"学生的数据");
}
}