本文将介绍如何使用 Java 中的 Set 集合来实现不重复添加用户信息的功能。

首先,我们创建一个名为 User 的类,该类包含用户姓名(name)、性别(sex)和年龄(age)等属性。为了确保 Set 集合能够正确判断用户对象是否重复,我们需要重写 User 类的 hashCode() 和 equals() 方法。

接着,我们创建一个名为 UserSys 的类,其中定义了一个名为 set 的 HashSet 实例属性,用于存储 User 对象。在 UserSys 类中,我们定义了一个 addUser() 方法,该方法用于添加用户信息。

在添加用户信息时,addUser() 方法会先判断该用户是否已经存在于 set 集合中。如果不存在,则将该用户对象添加至 set 集合中,并输出“用户添加成功”提示信息;如果已存在,则输出“用户已存在,无需重复添加”提示信息。

下面是具体的代码实现:

import java.util.HashSet;
import java.util.Set;

public class User {
    private String name;
    private String sex;
    private int age;

    public User(String name, String sex, int age) {
        this.name = name;
        this.sex = sex;
        this.age = age;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + age;
        result = prime * result + ((name == null) ? 0 : name.hashCode());
        result = prime * result + ((sex == null) ? 0 : sex.hashCode());
        return result;
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        User other = (User) obj;
        if (age != other.age)
            return false;
        if (name == null) {
            if (other.name != null)
                return false;
        } else if (!name.equals(other.name))
            return false;
        if (sex == null) {
            if (other.sex != null)
                return false;
        } else if (!sex.equals(other.sex))
            return false;
        return true;
    }
}

public class UserSys {
    private Set<User> set = new HashSet<>();

    public void addUser(User user) {
        if (!set.contains(user)) {
            set.add(user);
            System.out.println('用户添加成功');
        } else {
            System.out.println('用户已存在,无需重复添加');
        }
    }
}

在上述代码中,User 类重写了 hashCode() 和 equals() 方法,用于判断用户对象是否相等。UserSys 类中定义了添加用户信息方法 addUser(),该方法先判断 set 集合中是否存在该用户对象,若不存在则将该用户对象添加至 set 集合中,并输出“用户添加成功”提示信息,否则输出“用户已存在,无需重复添加”提示信息。

通过使用 Set 集合,我们可以轻松地实现不重复添加用户信息的功能。这在实际开发中非常有用,例如,我们可以使用 Set 来存储用户列表,并确保每个用户只出现一次。

希望本文能够帮助您理解使用 Set 实现不重复添加用户的原理和方法。如果您有任何疑问,请随时提出。

Java 使用 Set 实现不重复添加用户:代码示例与解析

原文地址: https://www.cveoy.top/t/topic/n7R1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录