Scala
文章平均质量分 72
菜菜的大数据开发之路
Java技术栈 AND 大数据开发,学习笔记, 拒绝水文
展开
-
六-1, Scala模式匹配对象及样例类
1. 提取器2. Unapply方法快速上手, 可略过下面Scala 提取器是一个实现了Unaply方法的对象;Unapply方法算是apply方法的反向操作: unapply 接受一个对象, 然后从对象中提取值, 提取的值通常是用来构造该对象的值为了更快的理解, 我们有必要复习一下apply方法: , 简单说就是当我们把对象当做函数一样调用, 传值等, Scala会隐式的调用该对象的类中实现的apply方法;, 如我们有初始化一个Person类,并传入值, Person类如果实现了相应的a翻译 2022-02-25 22:47:01 · 243 阅读 · 0 评论 -
六, Scala 模式匹配总结
六, 模式匹配Scala中的模式匹配类似于Java中的switch语法,但是scala从语法中补充了更多的功能, 所以更加强大;switch(变量){ case '值1': 执行语句; break; case '值2': 执行语句; break; default: 执行语句; break;}6.1 基本语法模式匹配语法中, 采用match关键字声明, 如: 变量名 ma原创 2022-02-25 22:42:34 · 812 阅读 · 0 评论 -
五-4, Scala 队列,并行集合
1. Scala队列1,1 Scala Queen 定义Scala 同 Java 一样,已经直接给出了 Queue 的实现。它本质上是一个有序列表,在底层可以使用数组或者链表去实现。Queue 显然遵循先入先出的原则。Scala 同时给出了对于队列的 mutable 实现和 immutable 实现。对于不可变队列,进行操作后会返回新的队列;对于可变队列,进队出队操作是在原先的队列中进行的。//加上前缀来明确声明使用的是可变队列还是不可变队列。//apply方法实现mutable.Queue原创 2022-02-25 10:53:55 · 575 阅读 · 0 评论 -
五-3, Scala 类型检查和转换, 枚举类, 应用类,定义新类型
1. 类型检查和转换用法说明 obj.isInstanceOf[T] 判断obj是不是T类型, 返回布尔值 obj.asInstanceOf[T] 将pbj强转成T类型, 返回的是 包名.类名@地址 classOf[类名]获取对象的类名,返回的是 class 包名.类名package patternmatchdemoclass Person{}object Person { def main(args: Array[String]): Unit =原创 2022-02-24 20:29:21 · 315 阅读 · 0 评论 -
完整代码示例-Scala 基础集合计算函数
Scala 基础集合计算函数代码示例详细总结查看本文package collectionsdemoimport scala.collection.mutableimport scala.collection.mutable.{ArrayBuffer, ListBuffer}object NormalCollectionFunctionDemo { def main(args: Array[String]): Unit = { //常见集合 Array, List, Set, Map原创 2022-02-22 12:12:11 · 495 阅读 · 0 评论 -
五-2, Scala集合常用函数全总结
五-2, 集合常用函数在学习本文之前, 必须掌握以下知识点函数的最简化原则元组的概念和使用方法函数柯里化隐式参数(可选)1. 集合的基础方法/函数用法解释Array, List, Set, Map使用区别xx.length 或 xx.size获取集合长度(大小)(Array, List均有length, size方法, 而Set, Map只有 size方法)xx.foreach(println)循环遍历均可使用xx.iterator迭代器原创 2022-02-21 23:11:22 · 1421 阅读 · 0 评论 -
五-1, Scala 元组(Tuple)
1. 快速上手元组也是可以理解为一个容器,可以存放各种相同或不同类型的数据。说的简单点,就是将多个无关的数据封装为一个整体,称为元组package TupleDemoobject TupleDemo { def main(args: Array[String]): Unit = { //(1)声明元组的方式:(元素 1,元素 2,元素 3) val tuple: (Int, String, Boolean) = (40,"bobo",true)原创 2022-02-21 17:07:52 · 785 阅读 · 0 评论 -
五, Scala常见集合类总结(Array, List, Set, Map)
五, Scala常见集合类总结(Array, List, Set, Map)5.1 Scala集合概述Scala 的集合有三大类: 序列seq, 集Set, 映射Map, 所有的集合都扩展自 Iterable 特质;对于几乎所有的集合类, Scala都同时提供了可变和不可变的版本. 分别位于以下两个包: scala.collection.immutable, scala.collection.mutableQ:什么是可变,不可变集合?a. Scala 不可变集合, 就是指该集合对象不可修原创 2022-02-20 22:11:55 · 1608 阅读 · 0 评论 -
四, Scala 伴生对象, 特质
四, Scala 伴生对象和伴生类4.1 单例对象和伴生对象Scala语言是完全面向对象的语言, 所以并没有静态的操作(即在Scala中没有静态的概念, 没有静态变量, 静态方法等等);但是为了能够和Java语言交互(因为Java中有静态概念), Scala使用单例对象去模拟实现Java中的静态概念; 如何模拟呢? 让单例对象的名称与类的名称保持一致(即object A, class A, 类名为A, 保持一致), 这个单例对象呢, 也有了个新的名称, 我们称之为某个类的伴生对象;(即,原创 2022-02-19 17:31:27 · 566 阅读 · 0 评论 -
三, Scala 面向对象基础知识汇总
六, Scala 中的面向对象Scala 的面向对象思想,概念与Java 的基本一致, 但是语法和Java不同, 补充了更多的功能;6.1 包基本语法 package 包名 Scala包的三大作用(和Java一样)区分同名类在类很多的时候, 很好的管理类控制访问的范围6.1.1 包的命名数字, 字母, 下划线, 小圆点[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vRFiDrwu-1644314342819)(2022-01-06-22-2原创 2022-02-08 17:59:35 · 684 阅读 · 0 评论 -
二, Scala 函数式编程详解
五, 函数式编程面向对象编程(OOP)面向对象思想: 使用对象来映射现实中的事物, 使用对象的关系来描述事事物之间的联系面向对象编程: 把要解决的问题按照一定的规则划分为多个独立的对象, 这些对象拥有各自的属性和方法, 通过调用对象的方法来解决问题;[举个栗子]用户通过JDBC连接和读取数据库对象: 用户;属性: 用户名, 密码;行为(方法): 登录, 连接JDBC, 读取数据库; 对象的本质: 对数据和行为的一个封装 函数式编程(FP)面向过程编程: 分析解原创 2022-01-06 22:06:12 · 1236 阅读 · 0 评论 -
一, Scala基础语法全总结
一, 简单入门1.1 为什么要学习Scala?Java的扩展和延伸Scala基于JVM, 和Java完全兼容, 同样具有跨平台,可以执行好,方便的垃圾回收等特性;Scala是一种纯粹的面向对象语言;Scala是一门函数式编程语言;Scala更适合大数据的处理Scala对集合类型数据处理有非常好的支持Sparkd的底层用Scla编写1.2 Scala 与 Java, JVM的关系1.3 Scala语言的特点1.4 Scala 安装和IDE的配置安装和配置环境变原创 2021-12-29 21:15:36 · 2371 阅读 · 1 评论 -
0. Scala HelloWord 案例
Scala版本的HelloWorld, 注意先把IDEA装上支持Scala的插件噢;打开 IDEA->点击左侧的 Flie->选择 New->选择 Project…选择Maven, 填好喜欢的GAV;默认下,Maven 不支持 Scala 的开发,需要引入 Scala 框架。, 在项目上右键选择, Add FrameWorks Support;选择Scala的安装目录,新建Scala, 写入HelloWorld, 注意下一步创建的是Object噢;.原创 2021-12-24 20:30:25 · 333 阅读 · 0 评论