海棠书屋 > 豪门 > 天降神婿 > 测试章节(通过下)

测试章节(通过下)(1 / 1)

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

需要强调的是,TreeMap是按键而不是按值有序,无论哪一种,都是对键而非值进行比较。

40节介绍了HashMap,我们提到,HashMap有一个重要局限,键值对之间没有特定的顺序,我们还提到,Map接口有另一个重要的实现类TreeMap,在TreeMap中,键值对之间按键有序,TreeMap的实现基础是排序二叉树,上节我们介绍了排序二叉树的基本概念和算法,本节我们来详细讨论TreeMap。

除了Map接口,因为有序,TreeMap还实现了更多接口和方法,下面,我们先来看TreeMap的用法,然后探讨其内部实现。

第一个为默认构造方法,如果使用默认构造方法,要求Map中的键实现parabe接口,TreeMap内部进行各种比较时会调用键的parable接口中的pareTo方法。

第二个接受一个比较器对象parator,如果parator不为null,在TreeMap内部进行比较时会调用这个parator的pare方法,而不再调用键的pareTo方法,也不再要求键实现parable接口。

应该用哪一个呢?第一个更为简单,但要求键实现parable接口,且期望的排序和键的比较结果是一致的,第二个更为灵活,不要求键实现parable接口,比较器可以用灵活复杂的方式进行实现。

最新小说: 嫡女夺珠 失忆五年,我和死对头奉子成婚了? 分手后,被渣男小叔明撩暗宠 病秧子先别死,神医娘子来冲喜了! 喝醉后,女神让我忘了她 都市觉醒:我能不断进化异能 宠妾灭妻?主母二嫁高冷王爷 钱局 相亲当天,我被豪门大佬闪婚了 诱哄:心机前夫他蓄谋已久!