java 自定义hashSet

set: 集合内数据不能重复,

特点: 使用 HashMap<添加的对象, Object> 利用 map的key来存储 添加进来的数据,从而实现不能重复数据存储的目的,value为一个new object对象。

脚本:

public class SxtHashSet {

	HashMap map;
	private static final Object PRESENT = new Object();

	public SxtHashSet(){
		map = new HashMap();
	}
	
	public int size(){
		return map.size();
	}
	
	public void add(Object o){
		map.put(o, PRESENT);   //set的不可重复就是利用了map里面键对象的不可重复!
	}
	
	public static void main(String[] args) {
		SxtHashSet s = new SxtHashSet();
		s.add("aaa");
		s.add(new String("aaa"));
		System.out.println(s.size());
	}

}

猜你喜欢

转载自chengjianxiaoxue.iteye.com/blog/2398492