zoukankan      html  css  js  c++  java
  • java基础之HashSet如何保证对象的唯一性

    首先Set集合是无序的 不可重复的 add的时候判断对象是否重复是用的equals

    HashSet<String> 存储String类型的数据时是可以保证数据的唯一性的 因为String类里面重写了hashCode()和equals()方法

    HashSet集合如果需要保证集合对象的唯一性 则需要重写hashCode()和equals()方法即可

    package zy.test;
    
    public class Student {
      private String name;
      private int age;
    
      public Student() {
    
      }
    
      public Student(String name, int age) {
        this.name = name;
        this.age = age;
      }
    
      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 int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + age;
        result = prime * result + ((name == null) ? 0 : name.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;
        Student other = (Student) obj;
        if (age != other.age)
          return false;
        if (name == null) {
          if (other.name != null)
            return false;
        } else if (!name.equals(other.name))
          return false;
          return true;
      }
    
    }
  • 相关阅读:
    activemq学习
    shell变量
    ext3文件系统目录限制问题
    linux性能优化cpu 磁盘IO MEM
    vs2010下编译osip2和eXosip2的4.0.0版的静态库及搭建开发环境
    samba的rpm包,只有tar.gz文件安装
    随记
    mount/umount系统调用
    不定参数的传递VA_LIST的用法
    samba服务器源码安装(非rpm)
  • 原文地址:https://www.cnblogs.com/blazeZzz/p/9088840.html
Copyright © 2011-2022 走看看