大数据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. }

相关推荐
小伍_Five2 天前
Spark实战能力测评模拟题精析【模拟考】
java·大数据·spark·scala·intellij-idea
黄雪超3 天前
DataStreamAPI实践原理——快速上手(实操详细版)
大数据·flink·scala
白总Server4 天前
C++语法架构解说
java·网络·c++·网络协议·架构·golang·scala
vortex55 天前
Perl One-liner 数据处理——基础语法篇【匠心】
开发语言·scala·perl
老兵发新帖6 天前
Coursier:安装sbt
scala
请你喝好果汁64110 天前
indel_snp_ssr_primer
大数据·开发语言·scala
MZWeiei12 天前
Spark 中,map和foreach的区别
大数据·分布式·spark·scala
MZWeiei14 天前
区分:union(),coalesce () 和 repartition ()
大数据·分布式·spark·scala
北漂老男孩14 天前
Scala与Spark:原理、实践与技术全景详解
大数据·开发语言·spark·scala·学习方法
MZWeiei14 天前
Spark 中,创建 DataFrame 的方式(Scala语言)
大数据·分布式·spark·scala