![](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基础
一. 数据类型 据类型 描述 yte 8bit的有符号数字, 范围在-128 – 127 hort 16bit的有符号数字, 范围咋-32768 – 32767 nt 32bit有符号数字 ong 64bit有符号数字 loat 32bit单精度浮点数 ouble 64bit双精度浮点数 har 16bit Unicode字符 tring 字符串 oolean 布尔类型 nit 表示无值, 和其他语言中的void等同 ull 空值或者空引用 o原创 2020-07-20 13:56:33 · 182 阅读 · 0 评论 -
大数据学习之Scala——03Scala面向对象编程(一)
一. 类与对象 1. 类与对象的区别和联系 类是抽象的,概念的,代表一类事物 对象是具体的,实际的,代表一个具体事物 类是对象的模板,对象是类的一个个体,对应一个实例 Scala中类和对象的区别和联系 和 Java是一样的。 2. 类 1. 如何定义类 基本语法 [修饰符] class 类名 { 类体 } 2. 定义类的注意事项 scala语法中,类并不声明为public,所有这些类都具有公有可见性(即默认就是public) 一个Scala源文件可以包含多个类. 3. 属性/成员变原创 2020-07-20 15:31:15 · 152 阅读 · 0 评论 -
大数据学习之Scala——04Scala面向对象编程(二)
一. 封装 1. 什么是封装 封装(encapsulation)就是把抽象出的数据/属性和对数据的操作/方法封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。 2. 封装的实现步骤 将属性进行私有化 提供一个公共的set方法,用于对属性判断并赋值: def setXxx(参数名 : 类型) : Unit = { //加入数据验证的业务逻辑 属性 = 参数名 } 提供一个公共的get方法,用于获取属性的值 def getXxx() [:原创 2020-07-20 19:11:43 · 201 阅读 · 0 评论 -
大数据学习之Scala——05函数式编程(一)
一. 基础 1. 介绍 在scala中,方法和函数几乎可以等同(比如他们的定义、使用、运行机制都一样的),只是函数的使用方式更加的灵活多样 [方法转函数]。 函数式编程是从编程方式(范式)的角度来谈的,可以这样理解:函数式编程把函数当做一等公民,充分利用函数、 支持的函数的多种使用方式。比如: 在Scala当中,函数是一等公民,像变量一样,既可以作为函数的参数使用,也可以将函数赋值给一个变量. 函数的创建不用依赖于类或者对象, 而在Java当中,函数的创建则要依赖于类、抽象类或者接口. 面向对象编程是以原创 2020-07-20 22:29:22 · 136 阅读 · 0 评论 -
大数据学习之Scala——06集合
一. 数据结构特点 1. 集合基本介绍 Scala同时支持不可变集合和可变集合 两个主要的包: 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable Scala默认采用不可变集合,对于几乎所有的集合类,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 · 119 阅读 · 0 评论