![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Scala面试
McGrady_Durant
天空越黑,星星越亮。博客当笔记
展开
-
闭包&柯里化
一个函数把外部的那些不属于自己的对象也包含(闭合)进来。 通俗的来说就是局部变量当全局变量来使用!!! 也就是一个函数的返回值 也是一个函数 柯里化 定义:柯里化指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有的第二个参数作为参数的函数 ...原创 2021-08-12 23:59:50 · 162 阅读 · 0 评论 -
隐式转换、
隐式转换函数是以implicit关键字声明的带有单个参数的函数。这种函数将会自动应用,将值从一种类型转换为另一种类型。 应用场景 在scala语言中,隐式转换一般用于类型的隐式调用,亦或者是某个方法内的局部变量,想要让另一个方法进行直接调用,那么需要导入implicit关键字,进行隐式的转换操作,同时,在Spark Sql中,这种隐式转换大量的应用到了我们的DSL风格语法中,并且在Spark2.0版本以后,DataSet里面如果进行转换RDD或者DF的时候,那么都需要导入必要的隐式转换操作。 ...原创 2021-08-12 23:59:06 · 113 阅读 · 0 评论 -
高阶函数(列举)
scala自带高阶函数 概述:可以接收一个函数的函数就是高阶函数 1.map 介绍:将集合中的每一个元素通过指定功能(函数)映射(转换)成新的结果集 map就是将list集合中的每个元素拿出来,然后根据你自己提供的 算法去计算处理,然后返回你需要的数据,可以是数组、集合、元组等 2.flatten 介绍:flat即压扁,压平,扁平化。效果就是将集合中的每个元素的子元素映射到某个函数并返回新的集合 flatten是将list中的多个集合进行元素合并(必须都是集合)集合中的元素必须是同一类型的数据 3.flat原创 2021-08-12 23:55:52 · 141 阅读 · 0 评论 -
伴生对象、
如果类和object在一个scala文件中,则称为object User 是class User的伴生对象 class User{ } //Scala中伴生对象采用object关键字声明,伴生对象中的全是”静态“内容,可以通过伴生对象名称直接调用 //伴生对象对应的类称之为伴生类,伴生对象的名称应该和伴生类名一致 //伴生对象中的属性和方法都可以伴生对象(类名)直接调用访问 //从语法角度来讲,所谓的伴生对象其实就是类的静态方法和成员的集合 object User{ //伴生对象 }原创 2021-08-12 23:57:30 · 129 阅读 · 0 评论