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 条评论
登录 后参与评论

相关文章

来自专栏从流域到海域

Python的闭包(Closure)与惰性计算(Lazy Evaluation)

闭包 在一些语言中,在函数中可以(嵌套)定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生闭包。运行时,一旦外部的 函数被执行,一个闭包就形成...

298100
来自专栏数据结构与算法

29:统计字符数

29:统计字符数 总时间限制: 1000ms 内存限制: 65536kB描述 给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。 ...

42060
来自专栏运维技术迷

PHP-函数

创建函数的语法 //function创建函数的关键字 function functionName() { 要执行的代码; } 函数准则 函数的名称应该显示出他的...

33270
来自专栏程序员互动联盟

【答疑解惑】Java中的默认构造器和equals方法

有一些网友在学习Java基础知识是遇到一些问题小编来解答一下。 1、Java中的默认构造器: 在Java中你要创建一个对象肯定会调用new语句来创建一个对象,在...

37780
来自专栏大闲人柴毛毛

稳扎稳打JavaScript(三)——创建对象的几种方式

有了前面两篇文章的基础后,我们来谈一谈在JS中创建对象的几种方式。 建议大家先预习下先前的两篇博客: 稳扎稳打JavaScript(一)——作用域链 ...

45240
来自专栏java初学

final和static关键字

368110
来自专栏咸鱼不闲

static关键字,面试经常被问到!(一)

static可以理解为全局的。 static可以修饰: 变量,方法,代码块,内部类。

34050
来自专栏和蔼的张星的图像处理专栏

6. 合并排序数组

合并两个排序的整数数组A和B变成一个新的数组。 样例 给出A=[1,2,3,4],B=[2,4,5,6],返回 [1,2,2,3,4,4,5,6] 最简单...

19120
来自专栏运维技术迷

连仕彤博客[Python笔记] locals() 函数

16030
来自专栏小白的技术客栈

Python运算符

今天开始讲解Python的运算符,这一节比较简单,知识点不多。 上文回顾 今天回顾一下昨天的文章主要讲了哪些知识点: Python是一门动态的强类型语言; 变量...

54680

扫码关注云+社区

领取腾讯云代金券