我们刚收到一份车祸报告,我真的不明白,我甚至不确定这是否是个好问题。。。但我什么都想不出来。
我有以下代码:
public class LeisureEventSelectedCategories {
private Set<Long> ids = new TreeSet<>();
public boolean contains(Long id) {
if (id == null) {
return false;
}
return ids.contains(id);
}
线路在哪里 return ids.contains(id)
崩溃,但有以下例外:
java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.Long
at java.lang.Long.compareTo(Long.java)
at java.util.TreeMap.find(TreeMap.java)
at java.util.TreeMap.findByObject(TreeMap.java)
at java.util.TreeMap.containsKey(TreeMap.java)
at java.util.TreeSet.contains(TreeSet.java)
at com.acme.b.a.d.a(LeisureEventSelectedCategories.java:50)
这个 Long
我这里收到的是一个 Map<String, Long>
.
leisureEventSelectedCategories.contains(eventCategoryNameToEventId.get(categoryName)) || leisurePlaceSelectedCategories.contains(placeCategoryNameToPlaceId.get(categoryName)),
哪里
Map<String, Long> placeCategoryNameToPlaceId = new LinkedHashMap<>();
Map<String, Long> eventCategoryNameToEventId = new LinkedHashMap<>();
除了更换 TreeSet
用一个 HashSet
以及使用 Collections.sort()
在我需要的地方,是什么导致了这种情况,我应该如何避免它在未来?
编辑:
价值观念 leisureEventSelectedCategories
选择来自服务器的所有项目后:
价值观念 eventCategoryNameToPlaceId
1条答案
按热度按时间xzv2uavs1#
最后,我们用
LinkedHashSet<Long>
飞机坠毁了。