久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

        手機站
        千鋒教育

        千鋒學習站 | 隨時隨地免費學

        千鋒教育

        掃一掃進入千鋒手機站

        領取全套視頻
        千鋒教育

        關注千鋒學習站小程序
        隨時隨地免費學習課程

        當前位置:首頁  >  技術干貨  > instanceOf關鍵字的作用

        instanceOf關鍵字的作用

        來源:千鋒教育
        發(fā)布人:yyy
        時間: 2023-06-29 10:52:00 1688007120

          一. instanceOf關鍵字

          簡介

          在上面學習類型轉換時,壹哥跟大家講過,在向下轉型時,如果兩個類型之間沒有直接或間接的繼承關系,此時進行強制類型轉換就會出現(xiàn)異常。出現(xiàn)異??倸w是不好的,那么我們有沒有辦法提前避免呢?必須有!其中的一個解決辦法就是利用instanceOf關鍵字來提前判斷。

          我們在向下轉型之前,最好先對要轉換的對象進行判斷,以免發(fā)生類型轉換異常。

          instanceof是Java里的一個二元操作符,類似于 ==、>、<等操作符。在進行向下轉型時,我們可以使用instanceOf用于類型檢查,判斷某個對象是否屬于指定的類型,如果屬于則返回true,否則返回false。

          語法

          instanceOf的作用是測試它左邊的對象是否是它右邊類的實例,并返回 boolean類型的數(shù)據(jù)。instanceOf基本語法如下:

        對象名 instanceof 類型

           instanceOf也經(jīng)常和三目(條件)運算符一起使用,格式為 a對象 instanceof B類型 ? 表達式1 : 表達式2

          另外從Java 14開始,instanceOf判斷后,可以直接轉型為指定類型的變量,不用再次強制轉型!

          3. 案例

          我們還是在上面的代碼基礎之上進行修改,instanceOf關鍵字使用案例如下:

        public class AnimalTest {

        public static void main(String[] args) {

        Animal animal= new Cat();
        //判斷animal是否是Cat類型
        if(animal instanceof Cat) {
        animal.speak();
        }

        Dog dog=new Dog();
        //如果dog是Cat類型,才會進行方法調(diào)用,否則不會執(zhí)行。
        if(dog instanceof Cat) {
        //強制類型轉換
        Cat cat = (Cat)dog;
        dog.speak();
        }

        //注意:從Java 14開始,判斷instanceOf后,可以直接轉型為指定類型的變量,不用再次強制轉型。
        Object obj = "java14新特性";
        if (obj instanceof String s) {
        System.out.println("字符串變大寫=" + s.toUpperCase());
        }

        if (dog instanceof Cat c) {
        c.speak();
        }

        //instanceOf也經(jīng)常和三目(條件)運算符一起使用
        Object obj2 = "hello 壹壹哥";
        String result=obj2 instanceof String ? "yes":"no";
        System.out.println(result);

        }

        }

           注意:從Java 14開始,判斷instanceOf后,可以直接轉型為指定類型的變量,不用再次強制轉型

        聲明:本站稿件版權均屬千鋒教育所有,未經(jīng)許可不得擅自轉載。
        10年以上業(yè)內(nèi)強師集結,手把手帶你蛻變精英
        請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
        免費領取
        今日已有369人領取成功
        劉同學 138****2860 剛剛成功領取
        王同學 131****2015 剛剛成功領取
        張同學 133****4652 剛剛成功領取
        李同學 135****8607 剛剛成功領取
        楊同學 132****5667 剛剛成功領取
        岳同學 134****6652 剛剛成功領取
        梁同學 157****2950 剛剛成功領取
        劉同學 189****1015 剛剛成功領取
        張同學 155****4678 剛剛成功領取
        鄒同學 139****2907 剛剛成功領取
        董同學 138****2867 剛剛成功領取
        周同學 136****3602 剛剛成功領取
        相關推薦HOT
        祁阳县| 晋江市| 温泉县| 大悟县| 沁阳市| 梁平县| 巍山| 大同市| 通渭县| 永登县| 于田县| 邵武市| 海丰县| 浙江省| 屏东县| 棋牌| 格尔木市| 中江县| 霞浦县| 龙江县| 平乡县| 阳东县| 连山| 宁明县| 伽师县| 游戏| 东城区| 绵阳市| 南江县| 达孜县| 南陵县| 蒙自县| 丽水市| 灵石县| 城市| 商都县| 白水县| 邵东县| 陇西县| 平陆县| 资阳市|