专栏首页技术专栏Scala入门与进阶(六)- Scala 函数高级操作

Scala入门与进阶(六)- Scala 函数高级操作

7. Scala 函数高级操作

1. 字符串高级操作

val name = "Gwf"

println(s"hello $name")

val str =
"""
|这是一个多行字符串
|看到了吗
""".stripMargin

println(str)

2. 匿名函数

// 直接定义
scala> (x:Int) => x+1
res19: Int => Int = <function1>

// 赋值给变量
scala> val m1 = (x:Int) => x+1
m1: Int => Int = <function1>

scala> m1(10)
res20: Int = 11

// 赋值给函数
scala> def add = (x:Int,y:Int)=>{x+y}
add: (Int, Int) => Int

scala> add(2,3)
res21: Int = 5

3. currying 函数

def sum(a:Int,b:Int)= a+b

println(sum(1,2))

// 将原来接收两个参数的一个函数,转换成2个
def sum2(a:Int)(b:Int) = a+b
println(sum2(1)(2))

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • mybatis association 多参数查询

    Meet相识
  • HBase 在Linux&Mac 下的安装和配置

    详情参考 http://hbase.apache.org/book.html#quickstart

    Meet相识
  • Scala入门与进阶(三)- 函数

    默认参数:在函数定义时,允许指定参数的默认值 $SPARK_HOME/conf/spark-defaults.conf

    Meet相识
  • 泛函编程(4)-深入Scala函数类

    既然是泛函编程,多了解一下函数自然是免不了的了: 方法(Method)不等于函数(Function) 方法不是函数但可以转化成函数;可以手工转换或者由编译器(c...

    用户1150956
  • 用Scala实现一个简单的Python的上下文管理器

    上下文管理器是对try/finally模式的简化,保证一段代码运行完后执行某项操作,即使那段代码被中止了,也会执行指定的操作。在这篇文章将展现函数式编程的威力,...

    哒呵呵
  • 《Kotlin极简教程》第二章 Hello,World 函数函数

    一个会写诗的程序员
  • Scala的基础概念

    例如:调用 def Add(y:Int) = x + y 其结果为xy之和,并且调用之后没有引起x值的变换,没有副作用 所以,Add函数没有副作用

    ZONGLYN
  • Swift讲解专题七——函数 原

            函数是有特定功能的代码段,函数会有一个特定的名称调用时来使用。Swift提供了十分灵活的方式来创建与调用函数。事实上在Swift,每个函数都是一...

    珲少
  • 泛函编程(2)-初次体验泛函编程

        泛函编程和数学方程式解题相似;用某种方式找出问题的答案。泛函编程通用的方式包括了模式匹配(pattern matching)以及递归思维(Recursi...

    用户1150956
  • 泛函编程(11)-延后计算-lazy evaluation

         延后计算(lazy evaluation)是指将一个表达式的值计算向后拖延直到这个表达式真正被使用的时候。在讨论lazy-evaluation之前...

    用户1150956

扫码关注云+社区

领取腾讯云代金券