需求分析:
通过数组 ,完成 对学生信息的 管理 (增删改查)
创建1个 学生类
创建1个 CRUD的类 – 学生管理类 并测试
学生类
package com.hope.demo1;
/**
* 学生类
*/
public class Student {
private String id;// 学号
private String name;//姓名
private int age; //年龄
public Student(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;
}
@Override
public String toString() {
return "Student{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
学生管理类(增删改查)
package com.hope.demo1;
/**
* 学生管理类
*/
public class StudentManager {
Student[] stus = new Student[30]; //固定班级有30个学生
static int currCount = 0; //当前学生数
/**
* 添加学生到数组
*
* @param s
*/
public void add(Student s) {
stus[currCount] = s; //将传入过来的学生存入数组
currCount++;
}
/**
* 根据学号查询 学生
* 循环 数组 , 通过循环拿到 对象 的 id 和传入的id比较 ,如果一致 ,那么打印当前 对象 ,否则查询为空
*
* @param id
*/
public void findById(String id) {
for (int i = 0; i < currCount; i++) {
if (stus[i].getId().equals(id)) {
System.out.println(stus[i]);
}
}
}
/**
* 删除
*/
public void del(String id) {
for (int i = 0; i < currCount; i++) {
if (stus[i].getId().equals(id)) {
System.out.println("存在可以删除");
for (int j = i; j < currCount; j++) {
stus[j] = stus[j + 1];
}
currCount--;
}
}
}
/**
* 修改
*/
public void update(String id, Student stu) {
for (int i = 0; i < currCount; i++) {
if (stus[i] != null) {
if (stus[i].getId().equals(id)) {
System.out.println("通过ID查询出要修改的信息:" + stus[i]);
stus[i].setAge(stu.getAge());
stus[i].setId(stu.getId());
stus[i].setName(stu.getName());
}
}
}
}
/**
* 查询所有
*/
public void findAll() {
for (int i = 0; i < currCount; i++) {
System.out.println(i + "***" + stus[i]);
}
}
public static void main(String[] args) {
StudentManager sm = new StudentManager();
Student s1 = new Student("01", "张三", 20);
Student s2 = new Student("02", "李四", 22);
Student s3 = new Student("03", "王五", 78);
sm.add(s1);
sm.add(s2);
sm.add(s3);
sm.findAll();
System.out.println("人数是:" + currCount);
System.out.println("======================");
System.out.println("根据Id查询");
sm.findById("02");
System.out.println("--------------------");
sm.del("01");
Student stu = new Student("33", "赵六", 79);
sm.update("02", stu);
sm.findAll();
}
}