Scala 的 “=>”

   <-只会出现在for循环里面

   ->只会出现在k->v里面


但是    =>  就较为复杂了

1.  表示函数的返回类型   (Function Type) 

//定义函数 

scala>  def Int(x: Int): Int = x*2
Int: (x: Int)Int


 //定义一个函数变量: 

scala> var x : (Int) => Int = Int
x: Int => Int = <function1>

//调用

scala> x(2)
res0: Int = 4

scala> x(6)
res1: Int = 12

 (x: Int) => Int 或者 Int => Int。左边是参数类型,右边是方法返回值类型。

2.匿名函数 

//通过匿名函数定义一个函数变量xx

   var xx = (x: Int) => x + 1

 //给一个高阶函数,传递一个函数:

    val newList = List(1,2,3).map { x => x * 5 }


//    匿名函数定义,   =>   左边是参数       右边是函数实现体 (x: Int)=>{}
 

3.case语句

scala> val x = 10; val y = 20
x: Int = 10
y: Int = 20
 
scala> val max = x > y match {
  case true => x
  case false => y
}
max: Int = 20

在模式匹配 match 和 try-catch 都用 “=>” 表示输出的结果或返回的值

发布了219 篇原创文章 · 获赞 300 · 访问量 29万+

猜你喜欢

转载自blog.csdn.net/bbvjx1314/article/details/105394752