大数据Scala面试题汇总

  1. scala语言有什么特点?什么是函数式编程?有什么优点?
  • scala同时具有⾯向对象和函数式编程的多种编程范式。
  • 函数式编程是一种编程范式,主要思想就是将程序写成一系列函数嵌套的形式,让程序的条例更清晰,灵活性更强。
  1. 什么是scala中的闭包?
  • 闭包(closure /ˈkloʊʒər/)
  • 闭包就是能够读取其他函数内部变量的函数。
复制代码
 
  1. val a = 3

  2. def add(b:Int) = a + b

  3. // add就是是一个闭包

  4. 什么是scala中的纯函数?有什么好处?

  • 是什么
    • 纯函数(Pure Function /pjʊr/ /ˈfʌŋkʃn/)所有的输入通过参数传递到函数内部,所有的输出通过返回值传递到函数外部;
    • 闭包或者带有打印语句的函数为非纯函数。
  • 好处
    • 无状态,线程安全,不需要线程同步;
    • 纯函数相互调用组装起来的函数,还是纯函数;
    • 应用程序或者运行环境(Runtime)可以对纯函数的运算结果进行缓存,运算加快速度。
复制代码
 
  1. //纯函数 输入都来自参数 输出都通过返回值

  2. def f1(a:Int,b:Int) = a + b

  3. //非纯函数

  4. val x = 1

  5. // 输入变量x不是通过参数输入

  6. def f2(y:Int) = x + y

  7. // 除了返回值还包含打印语句

  8. def f3(x:Int) = {

  9. println(x)

  10. x+1

  11. }

相关推荐
与仪共舞1 天前
罗德与施瓦茨 NRP18S|三路二极管射频功率传感器
scala·数据库架构
howard20055 天前
1.8.3 掌握Scala类与对象 - Scala基本骨架方法
scala·基本骨架方法
howard20055 天前
1.9 掌握Scala抽象类与特质
scala·抽象类·特质
howard20056 天前
1.8.2 掌握Scala类与对象 - 单例对象与伴生对象
scala·伴生对象·单例对象
howard20058 天前
1.7.1 掌握Scala函数 - 声明Scala函数
scala·声明scala函数·显式声明·隐式声明
howard200510 天前
1.6.4 掌握Scala数据结构 - 元组
scala·元组
howard200510 天前
1.6.5 掌握Scala数据结构 - 集合
scala·集合
蓝眸少年CY11 天前
Scala - 基础教程
开发语言·后端·scala
howard200511 天前
1.6.3 掌握Scala数据结构 - 映射
scala·可变映射·不可变映射
亿牛云爬虫专家12 天前
拒绝代理池雪崩:Scala + Akka 构建高并发的路由分发实战
scala·高并发·爬虫代理·代理ip·隧道代理·akka actor 模型·api代理