Scala简要总结二

本文探讨了Scala编程语言的一些核心特点,包括块语句的返回值行为、函数的多种写法、参数处理,以及函数的至简原则。此外,还讲解了闭包的概念,即函数与其引用环境的组合。进一步阐述了柯里化,即将多参数函数转化为单参数的过程,以及lazy特性,用于延迟计算。最后,介绍了Scala的默认导入、访问修饰符及其作用域。
摘要由CSDN通过智能技术生成

1. 块语句的特点 ?

块语句,最后一个值或表达式作为块语句的返回值。

2. 函数的几种写法 ?

无参 无返回值
无参 有返回值
有参 无返回值
有参 有返回值
多参 无返回值

3. 函数的参数

可变参数  参数的个数不一定
默认参数  创建函数的时候参数指定默认值,   当调用的时候可以传值,不传值使用的是默认值
带名参数  传递参数的时候可以不按照参数的顺序,  但是需要带参数的名称

4. 函数至简原则

能省就省
1:return可以省略,scala会使用函数体最后一行代码作为返回值
2:返回值如果能推断出来,那么可以省略
3:如果函数只有一行代码,可以省略花括号
4:如果函数无参,则可以省略小括号.若定义函数时省略小括号,则调用该函数时,
  也需要省略小括号;若定义函数未省略,则调用时,可省可不省.
5:如果函数明确声明Unit,那么即使函数体中使用return关键字也不起作用
6:Scala如果想要自动推断无返回值,则可以省略等号
7:如果不关心函数名,只关心逻辑处理,那么函数名(def)可以省略
8:如果函数明确声明return关键字,那么函数返回就不能自行推断了,需要声明返回值类型

5. 什么是闭包 ?

就是一个函数和与其相关的引用环境(变量)组合的一个整体(实体);
函数引入外部变量。

6. 什么是柯里化 ?

就是将一个接受多个参数的函数转化成一个接受一个的函数过程,可以简单的理解为一个特殊的参数列表声明方式。

7. 什么是lazy ?

当函数返回值被声明为lazy时,函数的执行被推迟,直到我们首次对此取值,该函数才会执行.这种函数我们称之为惰性函数;
当创建大的变量, 或者执行比较耗时的程序时 (比如读写数据)   适合使用lazy。

8. scala默认导入分别是?

import java.lang._
import scala._
import scala.Predef._

9. scala 的访问修饰符,作用域 ?

默认访问权限为public,但是scala中无public关键字;
private私有权限,只在本类和伴生对象中可用;
private[this]  修饰的只能在本类(限制的类中) private[Stu1]  可以进行访问;
protected受保护权限,scala中受保护权限比java中更严格,修饰的只能在本类, 伴生对象  子类  进行访问,同包无法访问;
protected[this] 修饰的只能在本类(限制的类中)子类  可以进行访问;
prviate[包名]增加包访问权限,包名下的其他类也可以使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值