java中Set 和 Map(二)

2014-11-24 10:29:10 · 作者: · 浏览: 1
回!
} while (t != null);
}
Entry e = new Entry(key, value, parent);
if (cmp < 0)
parent.left = e;
else
parent.right = e;
fixAfterInsertion(e); //根据红黑树规则添加节点!
size++;
modCount++;
return null;
}


上面的源码,我加了自己的一点点小注释!可以看出来,TreeSet和TreeMap判断其中元素是否重复是根据对象的compareTo()方法的返回值。返回值>0表示新来节点大于原来节点,并存储与该节点右枝!返回值<0表示新来节点小于原来节点,并存储与该节点左枝(当然还会和左孩子节点比较)!返回值=0表示两节点重复。