scala-基础之隐式转换、隐式参数、隐式类-08

17 篇文章 0 订阅

用IDEA创建maven项目后,在main中新建scala目录,File->Project Structure->Modules设置scala目录为sources,

再在Libraries中添加Scala SDK。

在scla中新建com.victor.scala包,新建Implict.scala

package com.victor.scala

/**
  * Company: Huazhong University of science and technology
  * 华中科技大学电气学院聚变与等离子体研究所
  * Version: V1.0
  * Author: Victor
  * Contact: 1650996069@qq.com  2018--2020
  * Software: IntelliJ IDEA
  * File: Implict
  * Time: 2018/10/14 16:30
  * Desc:
  **/
class Implict {

}

class Test{

}

class RunTest(test: Test){
  def run: Unit ={
    println("RunTest-->test="+test)
  }
}


object Implict extends App{
  //隐式转换
  implicit def test2RunTest(test: Test) = new RunTest(test)
  val test = new Test
  test.run

  //隐式参数
  def testParam(implicit name:String): Unit ={
    println("name="+name)
  }

  implicit val name ="Implicted......."
  testParam
  //明显的指明参数
  testParam("test wu ye .....")

  //隐式类
  implicit class ADD(x:Int){
    def add(a:Int):Int = a+x
  }

  println("2.add(23)="+2.add(23))
  //the same to next line
  println("2.add(23)="+ADD(2).add(23))

}

=====================================================================

结果:

后续继续更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值