Java 面向对象集合的增删改查实现教程

在Java中,面向对象编程(OOP)允许我们使用类和对象来组织代码。集合(如List、Set、Map等)是存储对象的容器。本篇文章将教你如何使用Java实现一套简单的面向对象的集合增删改查(CRUD)功能。

整体流程

以下是实现CRUD的基本步骤:

步骤 描述
1. 创建模型类 定义一个类来表示集合中的对象
2. 创建管理类 定义一个类来管理对象的集合
3. 实现增删改查方法 在管理类中实现增删改查的方法
4. 测试功能 编写主函数测试增删改查功能

创建模型类

首先,我们创建一个简单的模型类Person,它包含人名和年龄:

// Person.java
public class Person {
    private String name; // 姓名
    private int age;     // 年龄

    // 构造函数,用于初始化Person对象
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Getter和Setter方法
    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;
    }

    // 重写toString方法,用于打印Person信息
    @Override
    public String toString() {
        return "Person{name='" + name + "', age=" + age + "}";
    }
}

创建管理类

然后,我们创建一个管理类PersonManager,用于对Person对象的集合进行管理:

import java.util.ArrayList;
import java.util.List;

// PersonManager.java
public class PersonManager {
    private List<Person> people; // 存储Person对象的集合

    // 构造函数,初始化集合
    public PersonManager() {
        people = new ArrayList<>();
    }

    // 增加一个Person对象
    public void addPerson(Person person) {
        people.add(person); // 把新Person对象添加到集合中
    }

    // 删除一个Person对象
    public void removePerson(String name) {
        people.removeIf(person -> person.getName().equals(name)); // 通过名称删除
    }

    // 更新一个Person对象
    public void updatePerson(String name, Person newPerson) {
        for (int i = 0; i < people.size(); i++) {
            if (people.get(i).getName().equals(name)) {
                people.set(i, newPerson); // 将旧对象替换为新对象
                break;
            }
        }
    }

    // 查询所有的Person对象
    public void displayPeople() {
        for (Person person : people) {
            System.out.println(person); // 打印每个Person对象的信息
        }
    }
}

测试功能

最后,我们在主函数中测试上述功能:

// Main.java
public class Main {
    public static void main(String[] args) {
        PersonManager manager = new PersonManager();

        // 增加Person对象
        manager.addPerson(new Person("Alice", 30));
        manager.addPerson(new Person("Bob", 25));

        // 显示所有Person
        System.out.println("当前人员列表:");
        manager.displayPeople();

        // 更新Bob的年龄
        manager.updatePerson("Bob", new Person("Bob", 26));
        System.out.println("\n更新后的人员列表:");
        manager.displayPeople();

        // 删除Alice
        manager.removePerson("Alice");
        System.out.println("\n删除后的人员列表:");
        manager.displayPeople();
    }
}

类图

以下是我们定义的PersonPersonManager类的类图,使用mermaid语法展示:

classDiagram
    class Person {
        +String name
        +int age
        +Person(String name, int age)
        +String getName()
        +void setName(String name)
        +int getAge()
        +void setAge(int age)
        +String toString()
    }

    class PersonManager {
        +List<Person> people
        +PersonManager()
        +void addPerson(Person person)
        +void removePerson(String name)
        +void updatePerson(String name, Person newPerson)
        +void displayPeople()
    }

甘特图

下面是项目的甘特图,展示各个步骤的开发时序:

gantt
    title Java CRUD Implementation
    dateFormat  YYYY-MM-DD
    section 完成模型类
    创建Person类           :done,  des1, 2023-10-01, 1d
    section 管理类
    创建PersonManager类    :done,  des2, 2023-10-02, 1d
    section 实现功能
    实现增删改查方法       :done,  des3, 2023-10-03, 2d
    section 测试功能
    编写主函数测试功能     :done,  des4, 2023-10-05, 1d

总结

通过上述步骤,我们实现了一个简单的Java面向对象的集合增删改查功能。你可以使用PersonManager类来管理Person对象的集合,对其进行添加、删除、更新和查询操作。希望这个教程对你有所帮助,鼓励你继续深入学习Java的面向对象编程!