banner
指数爆炸

指数爆炸

我做了对饭 !
github
bilibili

java.lang.ClassCastException

在主线程中的异常 "main" java.lang.ClassCastException: class itheima11.student1 无法转换为 class java.lang.Comparable (itheima11.student1 在加载器 'app' 的未命名模块中;java.lang.Comparable 在加载器 'bootstrap' 的 java.base 模块中)
在 java.base/java.util.TreeMap.compare (TreeMap.java:1569) 中
在 java.base/java.util.TreeMap.addEntryToEmptyMap (TreeMap.java:776) 中
在 java.base/java.util.TreeMap.put (TreeMap.java:785) 中
在 java.base/java.util.TreeMap.put (TreeMap.java:534) 中
在 java.base/java.util.TreeSet.add (TreeSet.java:255) 中

當您嘗試將物件強制轉換為非類型時,會引發此錯誤訊息。

這裡是因為將 itheima11.student1 類別的物件強制轉換為 java.lang.Comparable 類別,但它並未實作。
錯誤訊息指出您需要在 student1 類別中實作 Comparable 介面。

感悟:

當 TreeSet 集合中的元素是某個類別時,這個類別一定要實作 Comparable 介面,否則就會報錯。因為 TreeSet 只能對實作了 Comparable 介面的類別物件進行排序,因為 Comparable 介面中有一個 `compareTo (Object o) 方法用於比較兩個物件的大小。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。