用scala写一个匿名函数mySqure,用来求一个整数的平方。使用该函数,求3的平方加5的平方值。 有一个map数据类型变量,存储内容为:{北京大学-北京,天津大学-天津,广州大学-广州,深圳大学-深圳},请写一个函数,输入内容为大学名称,输出内容为地点
时间: 2024-03-12 08:44:23 浏览: 18
好的,下面是Scala代码:
```scala
// 定义匿名函数mySquare
val mySquare = (x: Int) => x * x
// 使用mySquare求3的平方加5的平方值
val result = mySquare(3) + mySquare(5)
println(result)
// 定义map数据类型变量
val universities = Map("北京大学" -> "北京", "天津大学" -> "天津", "广州大学" -> "广州", "深圳大学" -> "深圳")
// 定义函数,输入大学名称,输出地点
def getLocation(university: String): String = {
universities.getOrElse(university, "未知")
}
// 测试getLocation函数
println(getLocation("北京大学"))
println(getLocation("清华大学"))
```
输出结果为:
```
34
北京
未知
```
希望对你有所帮助!如果你有任何问题,请随时问我。
相关问题
scala 匿名函数指定返回值类型
在 Scala 中,可以使用 `=>` 符号来定义匿名函数。如果需要指定匿名函数的返回值类型,可以使用下划线 `_` 代替函数名,并在箭头后面指定返回类型,例如:
```
val fun: Int => Int = _ * 2
```
上面的代码定义了一个输入为整数、输出为整数的匿名函数,该函数将输入的整数乘以 2 并返回结果。在这个例子中,我们使用了类型推导,因此没有显式指定输入类型。但是,为了指定输出类型为整数,我们在箭头后面使用了类型注解 `: Int`。
scala中map函数的用法
在 Scala 中,map 是一个高阶函数,它接受一个函数作为参数,并将这个函数应用于集合中的每个元素,最终返回一个新的集合。map 函数的使用方法如下:
```scala
val list = List(1, 2, 3, 4, 5)
val newList = list.map(x => x * 2)
```
上面的代码中,我们定义了一个整数列表 list,然后使用 map 函数将列表中的每个元素乘以 2,得到一个新的列表 newList。其中,`x => x * 2` 表示一个匿名函数,它将 x 乘以 2,并返回结果。
除了列表,map 函数还可以用于其他集合类型,比如数组和映射。如果是数组,使用方式类似:
```scala
val arr = Array(1, 2, 3, 4, 5)
val newArr = arr.map(x => x * 2)
```
如果是映射,map 函数将应用于映射中的每个键值对,返回一个新的映射:
```scala
val map = Map("a" -> 1, "b" -> 2, "c" -> 3)
val newMap = map.map{ case (k, v) => (k, v * 2) }
```
上面的代码中,我们定义了一个映射 map,然后使用 map 函数将每个值乘以 2,得到一个新的映射 newMap。`case (k, v) => (k, v * 2)` 表示一个模式匹配,将映射中的每个键值对解构为键 k 和值 v,然后将 v 乘以 2,最后返回一个新的键值对 (k, v * 2)。