當我將HashSet轉換爲TreeSet時,出現以下錯誤。這裏的catch是我實現了Comparable,我的自定義類是按照我聲明的compareTo方法進行排序的。那麼有什麼我需要考慮的嗎? Pl你能幫忙嗎?java.util.HashSet不能轉換爲java.util.TreeSet,雖然我實現了Comparable
異常在線程「主要」 java.lang.ClassCastException:java.util.HashSet中不能轉換到java.util.TreeSet中
當我將HashSet轉換爲TreeSet時,出現以下錯誤。這裏的catch是我實現了Comparable,我的自定義類是按照我聲明的compareTo方法進行排序的。那麼有什麼我需要考慮的嗎? Pl你能幫忙嗎?java.util.HashSet不能轉換爲java.util.TreeSet,雖然我實現了Comparable
異常在線程「主要」 java.lang.ClassCastException:java.util.HashSet中不能轉換到java.util.TreeSet中
TreeSet
和HashSet
是「兄弟」:他們無一不是AbstractSet子類。這意味着一個人不能被投向另一個,他們都不是另一個的父母。鑄造規格可以在here找到。
如果你的對象也是Comparable
實例,您可能希望將其轉換爲Comparable
:
// type parameters are not included
Comparable newComparableObject = (Comparable) yourComparableHashSet;
http://beginnersbook.com/2014/08/how-to-convert-a-hashset-to-a-treeset/
這是我努力。正如你可以看到該行
Set<String> tset = new TreeSet<String>(hset);
在帖子中顯示如何投。
,但在我的代碼,我鑄件如下所以我得到的錯誤
Set<String> tset = (TreeSet) hset;
某處在代碼中,你正在做一個錯誤的演員。錯誤表示它 –
請顯示相關代碼。 –