HashSet的属性描述
HashSet的属性描述”
数值存储原理:
数据通过hascode计算出哈希值;
通过哈希值和一个方法计算出在数组中对应的存储位置
-
对于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); } } -
对于实例化的属性遵循不唯一性和有序性
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 +
'}';
}
}

浙公网安备 33010602011771号