网站分析流程,天津网站建设wangzhii,网络程序员,cn域名后缀网站一#xff1a;引言
HashSet类继承于 Set接口 其方法均可被直接调用#xff0c;不用手写#xff0c;本篇敲的码是为了熟悉底层原理#xff0c;HashMap的特点#xff1a;无序#xff0c;无重复。其底层用的也是mapkey,value容器#xff0c;但其value值固定,所以在…一引言
HashSet类继承于 Set接口 其方法均可被直接调用不用手写本篇敲的码是为了熟悉底层原理HashMap的特点无序无重复。其底层用的也是mapkey,value容器但其value值固定,所以在HashSet当中存储key值时不可重复。
二上码
package cn.wyj.two;import java.util.HashMap;
import java.util.Map;public class Demo8_手写HashSet {Map map;public static final Object VALUE new Object();public Demo8_手写HashSet(){map new HashMap();}public int size(){return map.size();}public void add(Object obj){map.put(obj,VALUE);}Overridepublic String toString() {// TODO Auto-generated method stubStringBuilder sb new StringBuilder();sb.append([);for(Object temp:map.keySet()){sb.append(temp,);}sb.setCharAt(sb.length() - 1, ]);return sb.toString();
}public static void main(String[] args) {Demo8_手写HashSet set new Demo8_手写HashSet();set.add(aa);set.add(bb);set.add(cc);set.add(cc);//测试重复元素System.out.println(set);}
}