国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

解決java.lang.ClassCastException的java類型轉換異常的問題

瀏覽:2日期:2022-08-23 15:57:34

在項目中,需要使用XStream將xml string轉成相應的對象,卻報出了java.lang.ClassCastException: com.model.test cannot be cast to com.model.test的錯誤。

原因:

項目中應該是采用了熱部署,devtools,因為累加載器的不同所以會導致類型轉換失敗

措施:

在pom.xml中將以下代碼注釋掉:

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> </dependency>

補充知識:TreeSet在add對象時報ClassCastException錯誤

TreeSet實現了SortedSet接口,可以對集合中的對象進行排序,但是在使用TreeSet時要注意一點,那就是要給TreeSet傳遞一個比較器,也就是指定比較規則,否則的話,它就不知道誰大誰小,也就不能排序了。此時它會報一個ClassCastException的異常。

jdk1.6文檔里add方法關于這個異常是這樣描述的

Throws:

ClassCastException - if the specified object cannot be compared with the elements currently in this set

翻譯:ClassCastException - 如果指定的對象不能與當前在此集合中的元素進行比較

public class TreeSetTest{ public static void main(String[] args) { MyComparator comparator = new MyComparator(); // TreeSet<Student> set = new TreeSet<Student>(comparator); // 錯誤的代碼,少了比較器,運行則報下面的異常。 TreeSet<Student> set = new TreeSet<Student>(); Student s1 = new Student(50); Student s2 = new Student(70); Student s3 = new Student(40); set.add(s1); set.add(s2); set.add(s3); System.out.println(set); }}class Student { int score; public Student(int score) { this.score = score; } @Override public String toString() { // TODO Auto-generated method stub return String.valueOf(this.score); }}class MyComparator implements Comparator<Student>{ @Override //按分數高低比較,int為返回負數、零、整數,這里我寫的不咋好,但意思一樣 public int compare(Student o1, Student o2) { // TODO Auto-generated method stub int result = 0; if(o1.score > o2.score) { result = 1; }else { result = -1; } return result; }}

錯誤的運行結果:

Exception in thread 'main' java.lang.ClassCastException: com.shengsiyuan2.Student cannot be cast to java.lang.Comparable at java.util.TreeMap.compare(TreeMap.java:1294) at java.util.TreeMap.put(TreeMap.java:538) at java.util.TreeSet.add(TreeSet.java:255) at com.shengsiyuan2.TreeSetTest.main(TreeSetTest.java:17)

解決辦法:

把 TreeSet set = new TreeSet(); 改成:TreeSet set = new TreeSet(comparator);即可。

以上這篇解決java.lang.ClassCastException的java類型轉換異常的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美一区二区三区男人的天堂 | 成人免费一级毛片在线播放视频 | 精品国产三级在线观看 | 欧美激情亚洲色图 | 国产亚洲自拍一区 | 成年女人免费又黄又爽视频 | 日日噜噜噜夜夜爽爽狠狠69 | 国产成人亚洲综合无 | 一级v片 | 精品一区二区三区免费站 | 男女牲高爱潮免费视频男女 | 国产在线精品一区二区夜色 | 精品性久久 | 亚洲国产精品综合久久 | 在线精品免费观看综合 | 欧美精品亚洲精品日韩一区 | 成人夜色视频网站在线观看 | 亚洲国产一区在线二区三区 | 日本b站一卡二卡乱码入口 日本s色大片在线观看 | 97超级碰碰碰久久久观看 | 成年人网站免费在线观看 | 亚洲 欧美 精品专区 极品 | 欧美大狠狠大臿蕉香蕉大视频 | 国产v片在线播放免费观 | 毛片在线网站 | 欧美一级α片毛片免费观看 | 日韩一区二区精品久久高清 | 亚洲国产精品二区久久 | 美国三级 | 农村寡妇野外情一级毛片 | 免费欧美在线视频 | 国产精品自在自线亚洲 | 国产成人麻豆精品 | 亚洲国产精品一区二区不卡 | 久久久久久久久久久视频国内精品视频 | 巴西一级毛片 | 久久国产精品一区二区三区 | 国内自拍视频在线看免费观看 | 国产在线一区二区三区 | 日本国产在线视频 | 国产高清国产专区国产精品 |