手动实现一个HashSet,更深刻理解HashSet底层原理public class JtHashSet {
HashMap hashMap;
private static final Object PREZENT = new Object();
public JtHashSet() {
hashMap = new HashMap();
}
public int size(){
return hashMap.size();
}
public void add(Object object){
hashMap.put(object,PREZENT);
}
@Override
public String toString() {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("[");
for (Object key:hashMap.keySet()){
stringBuilder.append(key+",");
}
stringBuilder.setCharAt(stringBuilder.length()-1,']');
return stringBuilder.toString();
}
public static void main(String[] args) {
JtHashSet jtHashSet = new JtHashSet();
jtHashSet.add("aa");
jtHashSet.add("bb");
jtHashSet.add("cc");
System.out.println(jtHashSet);
}
}