最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java異常處理之java.lang.ClassCastException問題

 更新時(shí)間:2024年07月31日 08:51:40   作者:小紅的成長(zhǎng)日記  
這篇文章主要介紹了Java異常處理之java.lang.ClassCastException問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

類型轉(zhuǎn)換異常:兩個(gè)類型間轉(zhuǎn)換不兼容

java.lang.ClassCastException:異常解決!

下面僅僅展示部分代碼:

        //java1和java2都是list集合
        Map map = new HashMap();

        map.put("Java1",java1);
        map.put("Java2",java2);

        Set set = map.keySet();
        for (Object obj : set){
            
           StudentPra stu65 = (StudentPra) obj; //改行報(bào)錯(cuò)
           System.out.println(stu65.getClassStu());
           
           List stuList = (List) map.get(obj);
           
           for (Object o2 : stuList){

               StudentPra students = (StudentPra) o2;

               System.out.println("姓名"+students.getName()+",生日"+students.getBrithday());

           }
        }

報(bào)錯(cuò)代碼

StudentPra stu65 = (StudentPra) obj;

1.首先,讀報(bào)錯(cuò)信息:

Exception in thread “main” java.lang.ClassCastException: java.lang.String cannot be cast to cn.xiaozheng.test.StudentPra
at cn.xiaozheng.test.StudentPraTest.main(StudentPraTest.java:53)

2.剖析:

java.lang.String cannot be cast to cn.xiaozheng.test.StudentPra

類型轉(zhuǎn)換異常,就是類型不兼容。

3.看代碼

Map map = new HashMap();
map.put("Java1",java1);

我這里鍵存儲(chǔ)的類型為String類型;

       for (Object obj : set){
            
           StudentPra stu65 = (StudentPra) obj; //改行報(bào)錯(cuò)
           System.out.println(stu65.getClassStu());
           
           List stuList = (List) map.get(obj);
           
           for (Object o2 : stuList){
           ...
           }
       }

而我在改行把String類型轉(zhuǎn)換為了StudentPra類型,所以在后來需要通過鍵名獲取到鍵值的時(shí)候,出現(xiàn)類型不兼容的問題。

StudentPra stu65 = (StudentPra) obj; //改行報(bào)錯(cuò)

實(shí)際問題出在

List stuList = (List) map.get(obj);

無法正確通過String類型的鍵獲取到對(duì)應(yīng)類型的值!

其實(shí)我的代碼在書寫的時(shí)候就有點(diǎn)問題:因?yàn)槲叶x的鍵的類型為String類型,所以我大可直接輸出,但是現(xiàn)在也算是收獲了一種異常處理!

正確代碼:

        Map map = new HashMap();

        map.put("Java1",java1);
        map.put("Java2",java2);

        Set set = map.keySet();
        for (Object obj : set){

            System.out.println(obj);

           List stuList = (List) map.get(obj);

           for (Object o2 : stuList){

               StudentPra students = (StudentPra) o2;

               System.out.println("姓名"+students.getName()+",生日"+students.getBrithday());

           }
        }

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • HashMap線程不安全問題解析

    HashMap線程不安全問題解析

    這篇文章主要介紹了HashMap線程不安全問題解析,HashMap的線程不安全體現(xiàn)在會(huì)造成死循環(huán)、數(shù)據(jù)丟失、數(shù)據(jù)覆蓋等問題,其中死循環(huán)和數(shù)據(jù)丟失是在JDK1.7中出現(xiàn)的問題,在JDK1.8中已經(jīng)得到解決,但是1.8中仍會(huì)有數(shù)據(jù)覆蓋這樣的問題,需要的朋友可以參考下
    2023-11-11
  • springboot中非容器類如何獲取配置文件數(shù)據(jù)

    springboot中非容器類如何獲取配置文件數(shù)據(jù)

    這篇文章主要介紹了springboot中非容器類如何獲取配置文件數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 輕松掌握java外觀模式

    輕松掌握java外觀模式

    這篇文章主要幫助大家輕松掌握java外觀模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Java后端圖形驗(yàn)證碼的使用實(shí)例代碼

    Java后端圖形驗(yàn)證碼的使用實(shí)例代碼

    這篇文章主要介紹了Java后端圖形驗(yàn)證碼的相關(guān)資料,通過示例代碼講解了如何使用Kaptcha庫生成驗(yàn)證碼,并通過Base64編碼傳輸給前端,前端將驗(yàn)證碼文本發(fā)送到后端進(jìn)行驗(yàn)證,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04
  • Docker使用Dockerfile自定義鏡像方式

    Docker使用Dockerfile自定義鏡像方式

    這篇文章主要介紹了Docker使用Dockerfile自定義鏡像方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • java 中 request.getSession(true、false、null)的區(qū)別

    java 中 request.getSession(true、false、null)的區(qū)別

    這篇文章主要介紹了java 中 request.getSession(true/false/null)的區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 一文詳解Spring中的HttpMessageNotReadableException異常處理

    一文詳解Spring中的HttpMessageNotReadableException異常處理

    這篇文章主要為大家詳細(xì)介紹了Spring中的HttpMessageNotReadableException異常,分析其產(chǎn)生的原因并通過實(shí)際代碼示例展示如何有效地捕獲和處理這一異常,感興趣的可以了解下
    2025-02-02
  • 深入理解Java中的Lambda表達(dá)式

    深入理解Java中的Lambda表達(dá)式

    這篇文章主要介紹了深入理解Java中的Lambda表達(dá)式,Lambda在各編程語言中都是非常重要的特性,而Java中則加入得有些太晚...需要的朋友可以參考下
    2015-07-07
  • IDEA突然無法使用Git功能的問題解決

    IDEA突然無法使用Git功能的問題解決

    本文主要介紹了IDEA突然無法使用Git功能的問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-08-08
  • 解決springboot3.2集成mybatis-plus3.5.4.1報(bào)錯(cuò)的問題

    解決springboot3.2集成mybatis-plus3.5.4.1報(bào)錯(cuò)的問題

    這篇文章給大家介紹了如何解決springboot3.2集成mybatis-plus3.5.4.1報(bào)錯(cuò)的問題,文中通過圖文介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12

最新評(píng)論

万州区| 贺州市| 胶南市| 宁波市| 镇远县| 蒙阴县| 确山县| 岳池县| 齐齐哈尔市| 乐亭县| 永仁县| 乃东县| 密山市| 延安市| 德清县| 策勒县| 清丰县| 弥渡县| 河池市| 祁东县| 阿克苏市| 九江县| 丁青县| 木兰县| 黄梅县| 乌鲁木齐县| 泰州市| 竹山县| 永嘉县| 温宿县| 高青县| 图片| 正蓝旗| 武乡县| 延吉市| 满洲里市| 郯城县| 天水市| 米林县| 田阳县| 于田县|