hashset hashmap是有序的吗?

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 01:48:13
hashsethashmap是有序的吗?hashsethashmap是有序的吗?hashsethashmap是有序的吗?首先,HashSet和Hashmap分别是Set接口和Map接口的实现类,运用哈

hashset hashmap是有序的吗?
hashset hashmap是有序的吗?

hashset hashmap是有序的吗?
首先,HashSet 和Hashmap分别是Set接口和Map接口的实现类,运用哈希算法来存取元素,也就是它们中的对象不按特定方式排序;
但如果要实现对Set和Map的排序,要用到这2个接口的另外2个实现类,TreeSet和TreeMap, 对TreeSet的排序,要求存取到其中的对象要覆盖 equals(Object obj) ,hashcode() 方法,还要实现Comparable接口,并实现接口中compareTo(Object o)方法;Treemap的话 ,可以直接对其中的对象的键 key进行排序.(这是自然排序)
如果要实现自定义排序,TreeSet中的对象就要实现Comparator接口(作为比较器)并实现接口中的compare(Object src,Object disc) 方法;同理,TreeMap如果希望对键对象进行自定义排序,也要用到Compare接口指定具体排序方式.