我已经实现了自己的Map,名为AVLTreeMap。这是班级签名。
public class AVLTreeMap<K extends Comparable<K>, V>
如您所见,我在此地图中使用了可比较的键。问题是我想用LocalDateTime
类型键实例化地图。
private AVLTreeMap<LocalDateTime, CallRecord> callRecords;
我收到错误Type parameter 'java.time.LocalDateTime' is not within its bound; should implement 'java.lang.Comparable<java.time.LocalDateTime>'
。
据我所知,LocalDateTime实现Comparable<ChronoLocalDateTime<?>>
,此时,我对如何使用LocalDateTime
密钥集创建地图感到困惑。
有什么想法吗?
答案 0 :(得分:2)
Comparable
的通用签名有点不对,这个
public class AVLTreeMap<K extends Comparable<K>, V>
应该像
public class AVLTreeMap<K extends Comparable<? super K>, V>