Scala
本栏有关Scala学习
<一蓑烟雨任平生>
没成功之前才华等于狗屎,只有成功了才证明你的一切!
展开
-
Scala深入学习之类型参数与隐式转换学习
目录一、类型参数二、隐式转换一、类型参数泛型类代码:package generic/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @date : 2020/11/19 * @time : 7:54 下午 * Scala的类型参数学习:Scala的类型参数和Java一样,既可以定义在类上面,也可以定义在方法上面 * Java中的泛型定义,使用<>,<>指定具体的泛型,使用大写的标识符来制定,通常是原创 2020-11-20 17:57:19 · 180 阅读 · 0 评论 -
Scala深入学习之集合体系学习(二)
目录一、List集合二、Set集合三、案例:Scala实现wordcount一、List集合scala中列表操作:package collectionDemo/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @date : 2020/11/18 * @time : 9:22 下午 * * scala中列表操作: * Scala中列表list,首先是Seq的子trait,其要么是使用空;列表(Nil),要么就是又一个he原创 2020-11-19 21:34:37 · 175 阅读 · 0 评论 -
Scala深入学习之函数式编程
目录一、函数式编程二、高阶函数三、闭包和柯里化一、函数式编程示例代码:package matchDemo.function/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @date : 2020/11/17 * @time : 6:25 下午 * scala函数式编程 */object FunctionOps1 { def main(args: Array[String]): Unit = {原创 2020-11-18 19:52:29 · 192 阅读 · 0 评论 -
Scala深入学习之模式匹配
模式匹配是检查某个值(value)是否匹配某一个模式的机制,一个成功的匹配同时会将匹配值解构为其组成部分。它是Java中的switch语句的升级版,同样可以用于替代一系列的 if/else 语句。一、语法一个模式匹配语句包括一个待匹配的值,match关键字,以及至少一个case语句。package matchDemo.modeimport scala.io.StdIn/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @da原创 2020-11-17 16:31:57 · 188 阅读 · 0 评论 -
Scala深入学习之面向对象学习
目录一、封装二、类的构造三、内部类一、封装定义一个类,实际上就是把一类事物的共有的属性和行为提取出来,形成一个物理模型(模板)。这种研究问题的方法称为抽象。面向对象编程有三大特征:封装、继承和多态。封装(encapsulation)就是把抽象出的数据和对数据的操作封装在一起, 数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。封装的理解和好处:隐藏实现细节,可以对数据进行验证,保证安全合理如何体现封装:对类中的属性进行封装通过成员方法,包实现封装原创 2020-10-08 15:30:11 · 219 阅读 · 0 评论 -
Scala深入学习之数组学习
目录一、定长数组Array二、可变数组ArrayBuffer三、一、定长数组Array数据的构建使用new关键字创建一 个定长数组 //长度为30的整数数组,所有元素初始化为0val array = new Array[Int] (30)直接使用Array创建 并初始化一个数组//长度为2的Array【String】类型是推断出来的,所以就不需要newval sArr = Array("Hello", "World") 数组的赋值: 数组名(index) = 值// 使用原创 2020-09-16 20:03:46 · 251 阅读 · 0 评论 -
Scala深入学习之集合体系学习(一)
1.集合是一种用来存储各种对象和数据的容器。2.Scala集合分为可变和不可变的集合,不可变集合可以安全的并发访问。可变集合可以在适当的地方被更新或扩展。这意味着可以修改,添加,移除一个集合的元素。不可变集合,相比之下,永远不会改变。但是仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不会发生改变。3.Scala集合两个主要包不可变集合:scala.collection.immutable可变集合:scala.collection.muta原创 2020-08-27 00:06:43 · 260 阅读 · 0 评论 -
Scala深入学习之函数学习
目录一、函数的定义二、匿名函数三、递归函数四、无参函数五、方法和函数的区别联系一、函数的定义代码示例:package functionDemo/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @date : 2020/8/23 * @time : 2:14 下午 */object FunctionDemo1 { // 实现加法的功能 val f1 = ((a:Int,b:Int) =>{a+b}) va原创 2020-08-23 20:07:40 · 241 阅读 · 1 评论 -
Scala深入学习之方法的学习
目录一、方法定义二、无参方法三、默认参数方法四、可变参数方法五、方法定义的注意事项一、方法定义方法定义的基本格式:def 方法名(参数列表):返回值类型 = 方法体其中如果方法体的返回值是可以推断的话,返回值类型可以省略,但是如果方法是递归方法,返回值类型就不能省略代码示例:package methodDemo/** * @author : 蔡政洁 * @email :caizhengjie888@icloud.com * @date : 2020/8/19 * @time : 3:原创 2020-08-20 10:54:19 · 222 阅读 · 0 评论 -
Scala深入学习之表达式与循环学习
目录一、表达式(1)表达式(2)条件表达式(3)块表达式二、循环(1)for循环(2)高级for循环(3)for推导(4)while do-while循环(5)if和布尔变量跳出循环(6)breakable实现跳出循环一、表达式(1)表达式表达式:一个具有执行结果的代码块,结果是具体的值或者()表达式和语句的区别:表达式有返回值,语句被执行。表达式一般是一个语句块,执行后,返回一个值。不使用return语句,最后一个表达式即返回值。示例:// 返回的就是string类型scala>原创 2020-08-18 20:01:13 · 228 阅读 · 0 评论 -
Scala深入学习之操作符学习
一、算术操作符二、关系操作符三、逻辑操作符示例:scala> val toBe = truetoBe: Boolean = truescala> val nottoBe = falsenottoBe: Boolean = falsescala> val a = toBe && nottoBea: Boolean = falsescala> val a = toBe || nottoBea: Boolean = true四、位运算符原创 2020-08-17 16:00:52 · 210 阅读 · 0 评论 -
Scala深入学习之数据类型学习
目录一、Scala类型层级关系二、整数类型三、浮点类型四、字符类型五、字符串类型六、其他数据类型七、类型转换一、Scala类型层级关系Scala中数据类型的层级关系图为:Scala和Java一样,有8种数值类型 Byte、Char、Short、Int、Long、Float、Double和一个Boolean类型。Scala 数值类型的取值范围和 Java 对应类型的取值范围相同。和Java不同的是Scala没有基本类型和包装类型之分,这些类型都是类,有自己的属性和方法。Unit是值类型,他只有一原创 2020-08-16 16:54:47 · 491 阅读 · 0 评论 -
Scala深入学习之变量学习
目录一、变量定义二、var和val的区别三、变量总结一、变量定义基本语法:var|val 变量名 [:变量类型] = 变量值使用var或val定义一个变量使用var声明变量-可以被重新赋值。// 声明变量i1,手动指定类型为Int,此时需要保证所赋值类型匹配var i1:Int = 1// var修饰的变量之间可以相互赋值,并可以使用var重新定义scala> i1 = 2i1: Int = 2使用val声明常量-引用不可变,val修饰的变量,相当于Java中final修饰的原创 2020-08-14 16:36:13 · 283 阅读 · 0 评论 -
Centos7下Scala安装
目录Centos7下Scala安装第一步:下载软件第二步:安装软件(1)上传文件(2)解压文件第三步:配置环境变量第四步:检测Centos7下Scala安装电脑系统:macOS 10.15.4虚拟机软件:Parallels Desktop14Hadoop各节点节点操作系统:CentOS 7Scala版本:scala-2.12.8Scala的下载源地址:https://www.scala-lang.org/download/2.12.8.html第一步:下载软件首先要进入Scala官原创 2020-08-12 10:17:52 · 465 阅读 · 1 评论