![](https://img-blog.csdnimg.cn/20200721195334582.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Scala
scala学习笔记分享
Jiang锋时刻
这个作者很懒,什么都没留下…
展开
-
大数据学习之Scala——01概述及安装
一. Scala介绍1. Scala的6个特征Java和Scala可以混编类型推测(自动推测类型)并发和分布式(Actor)特质, 特征(类似于java中interface 和 abstract结合)模式匹配高阶函数二. Scala安装1. windows安装, 配置环境变量官网下载scala并安装: scala官网配置环境变量新建SCALA_HOME编辑Path变量;%SCALA_HOME%\bin;打开cmd,输入:scala - versi原创 2020-07-19 15:15:31 · 98 阅读 · 0 评论 -
大数据学习之Scala——02Scala基础
一. 数据类型据类型描述yte8bit的有符号数字, 范围在-128 – 127hort16bit的有符号数字, 范围咋-32768 – 32767nt32bit有符号数字ong64bit有符号数字loat32bit单精度浮点数ouble64bit双精度浮点数har16bit Unicode字符tring字符串oolean布尔类型nit表示无值, 和其他语言中的void等同ull空值或者空引用o原创 2020-07-20 13:56:33 · 184 阅读 · 0 评论 -
大数据学习之Scala——03Scala面向对象编程(一)
一. 类与对象1. 类与对象的区别和联系类是抽象的,概念的,代表一类事物对象是具体的,实际的,代表一个具体事物类是对象的模板,对象是类的一个个体,对应一个实例Scala中类和对象的区别和联系 和 Java是一样的。2. 类1. 如何定义类基本语法[修饰符] class 类名 { 类体} 2. 定义类的注意事项scala语法中,类并不声明为public,所有这些类都具有公有可见性(即默认就是public)一个Scala源文件可以包含多个类.3. 属性/成员变原创 2020-07-20 15:31:15 · 154 阅读 · 0 评论 -
大数据学习之Scala——04Scala面向对象编程(二)
一. 封装1. 什么是封装封装(encapsulation)就是把抽象出的数据/属性和对数据的操作/方法封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。2. 封装的实现步骤将属性进行私有化提供一个公共的set方法,用于对属性判断并赋值:def setXxx(参数名 : 类型) : Unit = { //加入数据验证的业务逻辑 属性 = 参数名}提供一个公共的get方法,用于获取属性的值def getXxx() [:原创 2020-07-20 19:11:43 · 206 阅读 · 0 评论 -
大数据学习之Scala——05函数式编程(一)
一. 基础1. 介绍在scala中,方法和函数几乎可以等同(比如他们的定义、使用、运行机制都一样的),只是函数的使用方式更加的灵活多样 [方法转函数]。函数式编程是从编程方式(范式)的角度来谈的,可以这样理解:函数式编程把函数当做一等公民,充分利用函数、 支持的函数的多种使用方式。比如:在Scala当中,函数是一等公民,像变量一样,既可以作为函数的参数使用,也可以将函数赋值给一个变量. 函数的创建不用依赖于类或者对象,而在Java当中,函数的创建则要依赖于类、抽象类或者接口.面向对象编程是以原创 2020-07-20 22:29:22 · 137 阅读 · 0 评论 -
大数据学习之Scala——06集合
一. 数据结构特点1. 集合基本介绍Scala同时支持不可变集合和可变集合两个主要的包:不可变集合:scala.collection.immutable可变集合: scala.collection.mutableScala默认采用不可变集合,对于几乎所有的集合类,Scala都同时提供了可变(mutable)和不可变(immutable)的版本Scala的集合有三大类:序列Seq、集Set、映射Map,所有的集合都扩展自Iterable特质,在Scala中集合有可变(mutable)和不可变原创 2020-07-21 15:38:22 · 93 阅读 · 0 评论 -
大数据学习之Scala——07模式匹配
一. 基础1. 基本介绍模式匹配语法中,采用match关键字声明,每个分支采用case关键字进行声明当需要匹配时,会从第一个case分支开始,如果匹配成功,那么执行对应的逻辑代码,如果匹配不成功,继续执行下一个分支进行判断。如果所有case都不匹配,那么会执行case _ 分支,类似于Java中default语句。2. 案例print("输入第1个数: ")val n1 = StdIn.readDouble()print("输入运算符: ")val oper = StdIn.rea原创 2020-07-21 19:49:12 · 120 阅读 · 0 评论