中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

6、Scala隱式轉換

發布時間:2020-06-07 15:02:24 來源:網絡 閱讀:762 作者:寬哥記事 欄目:大數據

一、Scala隱式轉換使用場景

    1、用于從一種類型到另一種類型的轉換

    2、用于缺少參數方法的調用

二、Scala隱式轉換分類

    1、隱式方法

      implicit def intToString(x: Int) = x.toString

    2、隱式類

      implicit class RichFile(file: File) {

          def read = Source.fromFile(file).mkString

        }

      new java.io.File(".").read

    3、隱式對象

      implicit object StringOrdering extends Ordering[String] {

          override def compare(x: String, y: String): Int = x.length - y.length

        }

    4、隱式變量

     implicit val test = 5

    5、隱式參數

     implicit val test = 5

     findAnInt

     def findAnInt(implicit x: Int) = x

三、隱式轉換規則

    1、如果表達式不符合編譯器要求的類型,編譯器會查找能使之符合類型要求的隱式轉換

    2、如果T類型中沒有成員e,但是我們還是想通過T.e來訪問e那么編譯器會查找能應用到T類型并且返回類型包含成員e的隱式轉換

四、隱式查找的規則


    1、隱式實體在查找發生的地點可見(可以通過import將隱式實體綁定到當前作用域)

    2、如果按照第一條規則沒有找到隱式實體的話,那么會在源類型和目標的類型(T)的隱式作用域里包含的所有隱式實體中查找

        2.1、類型T以及它的父類的伴生對象

        2.2、參數化類型T的所有的類型參數的伴生類

        2.3、類型T或者類型T的類型參數所在的對象(object)

        2.4、包對象


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台东县| 商河县| 镇平县| 什邡市| 武隆县| 澄城县| 浠水县| 西城区| 石城县| 房产| 汝州市| 富裕县| 衡阳市| 南开区| 巢湖市| 广州市| 鹤庆县| 温泉县| 东光县| 苏尼特右旗| 宜城市| 英德市| 息烽县| 什邡市| 顺昌县| 嫩江县| 常熟市| 滦平县| 阳东县| 桐庐县| 彩票| 吉木乃县| 永修县| 樟树市| 静宁县| 砀山县| 涿鹿县| 垦利县| 阿拉尔市| 竹山县| 离岛区|