网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

6、Scala隐式转换

一、Scala隐式转换使用场景

成都创新互联于2013年成立,是专业互联网技术服务公司,拥有项目网站设计制作、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元河东做网站,已为上家服务,为河东各地企业和个人服务,联系电话:18980820575

    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、包对象


当前名称:6、Scala隐式转换
分享网址:http://bjjierui.cn/article/jdccso.html

其他资讯