TreeMap自定义比较器实现Comparator接口重写compare方法直接返回1为啥取出的value都为null,但是Map集合中显示有元素,
难道必须要返回-1,0,1吗
TreeMap自定义比较器实现Comparator接口重写compare方法直接返回1为啥取出的value都为null,但是Map集合中显示有元素,
难道必须要返回-1,0,1吗
是的,必须要返回-1,0和1
Comparator
接口要求实现一个比较方法,它负责比较传入的两个元素a
和b
,如果a<b
,则返回负数,通常是-1
,如果a==b
,则返回0
,如果a>b
,则返回正数,通常是1
。TreeMap
内部根据比较结果对Key进行排序。
解释见 https://www.liaoxuefeng.com/wiki/1252599548343744/1265117109276544