HashSet的属性描述

HashSet的属性描述”

数值存储原理:

数据通过hascode计算出哈希值;

通过哈希值和一个方法计算出在数组中对应的存储位置

  1. 对于integer类型和String类型遵循唯一性和无序性

            package com.Hascode;
    
            import java.util.HashSet;
    
            public class IntegerList {
                public static void main(String[] args) {
                    //HashSet存入的是唯一值;斌提前无序
                    HashSet <Integer>ha = new HashSet<>();
                        ha.add(15);
                    System.out.println(ha.add(14));//true
                    System.out.println(ha.add(14));//false
                    ha.add(159);
                        ha.add(156);
                    System.out.println(ha.size());
                    System.out.println(ha);
                }
            }
    
    
  2. 对于实例化的属性遵循不唯一性和有序性

          package com.Hascode;
          import java.util.HashSet;
          public class StringLinst {
              public static void main(String[] args) {
                  HashSet hs = new HashSet();
                  //这里的HashSet调用实例属性;这里遵循有序性和不唯一性
                  hs.add(new TestDemo("lili",25));
                  hs.add(new TestDemo("lili",25));
                  hs.add(new TestDemo("honghong",24));
                  hs.add(new TestDemo("mingming",23));
                  hs.add(new TestDemo("dingding",25));
                  System.out.println(hs.size());
                  System.out.println(hs);
              }
          }
          class TestDemo{
              private String name;
              private int 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;
              }
  
              public TestDemo() {
              }
  
              public TestDemo(String name, int age) {
                  this.name = name;
                  this.age = age;
              }
  
              @Override
              public String toString() {
                  return "TestDemo{" +
                          "name='" + name + '\'' +
                          ", age=" + age +
                          '}';
              }
          }
  
posted @ 2022-04-14 18:52  爱豆技术部  阅读(45)  评论(0)    收藏  举报