zoukankan      html  css  js  c++  java
  • TreeSet随笔

    使用TreeSet的目的是要获得一个元素唯一并且排序过的元素集合. 默认排序为升序排列 数字-->大写字母-->小写字母

    通过两种方式让元素比较排序.

    一. 元素实现Comparable接口

    二. 向TreeSet构造函数传入一个实现了Comparator的对象

    注意事项:

    1. 当向TreeSet中添加元素时 如果Comparable.compareTo(T t)或Comparator.compare(T t)返回值为0时, 该元素被认为是重复元素并且不会被添加成功.

      TreeSet由TreeMap实现, TreeSet中的元素即为TreeMap的Key, 当向TreeMap添加元素时, 如果Comparable.compareTo()或Comparator.compare()返回值=0, Key值保持不变 替换Value值

    2. 添加的元素不能既有Integer类型(int型会自动包装成Integer类型) 又有Charactor 或者String 或者Long 等等, 否则会抛出ClassCastException.

      不同基本类型封装类Overwrite方法compareTo(T t)参数不同, 导致了如果比较Integer与Long, 则需将Integer转型为Long型, 由于Integer并非Long的子类 故抛出ClassCastException.

  • 相关阅读:
    https authorization basic
    第二十一章 单例模式
    第十九章 组合模式
    第十八章 备忘录模式
    第十七章 适配器模式
    第十六章 状态模式
    新博客~
    CF922D Robot Vacuum Cleaner
    BZOJ1767 [CEOI2009]harbingers
    树的直径学习笔记
  • 原文地址:https://www.cnblogs.com/davidwang/p/2821504.html
Copyright © 2011-2022 走看看