Scala
文章平均质量分 50
随风奔跑之水
理想是光明的,道路是曲折的,劲头是不可阻挡的
展开
-
Spark-Shell 常用算子练习
// 在控制台执行:spark-shell// ------------------------------------------------------// 一、元素型 RDD数据val rdd = sc.parallelize(1 to 10, 3) => rdd: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)// transformation 转换,记录了RDD演变的过程,只有action才会触发transformatio.原创 2020-08-27 14:03:20 · 423 阅读 · 0 评论 -
Scala中特殊符号的使用
Scala中常用特殊符号转载 2020-06-12 10:47:12 · 392 阅读 · 1 评论 -
在IDEA中利用Maven创建Spark项目
1、安装相应sdk及环境变量配置(1)安装java-sdk(2)安装scala-sdk(3)安装spark2、安装IDEA从官网下载安装包,常规安装,在Plugins中添加所需的插件,scala等3、maven配置打开maven存放文件夹找到 conf ->settings.xml找到<mirrors>节点把下面内容写入节点内 配置为阿里云的镜像 <mirror> <id>alimaven</id>原创 2020-06-08 14:48:50 · 2413 阅读 · 0 评论 -
Spark大数据商业案例(wifi探针数据分析)
wifi探针数据分析本项目实现的主要功能:通过探针设备采集可监测范围内的手机MAC地址、与探针距离、时间、地理位置等信息: 探针采集的数据可以定时发送到服务端保存: 利用大数据技术对数据进行人流量等指标的分析。最终以合理的方式展示数据处理结果。1、数据收集数据收集由服务器和探针设备共同完成,探针采集数据并发送到服务器,服务器接收探针设备的数据,处理成定格式保存至分布式文件系统(H...转载 2019-05-20 18:32:37 · 2820 阅读 · 2 评论 -
Scala学习之路之篇四(数组Array)
Scala 数组Scala 语言中提供的数组:是用来存储 -固定大小- 的 -同类型- 元素声明数组var z: Array[String] = new Array[String](3)// 或:var z = new Array[String](3)以上语法中,z 声明一个字符串类型的数组,数组长度为 3 ,可存储 3 个元素。我们可以为每个元素设置值,并通过索引来访问每...原创 2019-04-29 10:50:29 · 620 阅读 · 0 评论 -
Scala学习之路之篇二(scala方法与函数)
scala方法与函数Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。Scala 中使用 val 语句可以定义函数,def 语句定义方法。class Test{ def m(...原创 2019-04-28 18:07:43 · 225 阅读 · 0 评论 -
Scala学习之路之篇一(成员、运算、循环)
1、 声明/定义变量var 修饰的对象引用可以改变,val 修饰的则不可改变;var a = 3var a: Int = 3var a = 3Lvar a = 2.14var a = 2.14Fprint(a) // 输出不换行println(a) // 输出并换行val b = "hello,world"val b: String = "hello...原创 2019-04-28 16:58:57 · 152 阅读 · 0 评论 -
Scala学习之路之篇三(字符串)
Scala字符串不可变 String 字符串在 Scala 中,字符串的类型实际上是 Java String,它本身没有 String 类。在 Scala 中,String 是一个不可变的对象,所以该对象不可被修改。这就意味着你如果修改字符串就会产生一个新的字符串对象。object Test { val greeting: String = "Hello,World!" ...原创 2019-04-28 18:42:07 · 448 阅读 · 0 评论 -
Scala学习之路之篇五(集合、迭代器)
Scala集合**Scala 集合分为可变的和不可变的集合:1、【可变集合】可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。2、而【不可变集合】类,相比之下,永远不会改变;不过,你仍然可以模拟添加,移除或更新操作,但是这些操作将在每一种情况下都返回一个新的集合,同时使原来的集合不发生改变。几种常用集合类型的应用:1、List的特征是其元素以线性方式存...原创 2019-04-29 11:14:32 · 684 阅读 · 0 评论 -
Scala学习之路之篇六(类与对象)
Scala 类和对象类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。Scala中的类不声明为public,一个Scala源文件中可以有多个类。类定义(类 class)class Point(xc: Int, yc: Int) { var x: Int = xc var y: Int = yc def move(dx:...原创 2019-04-29 14:45:45 · 203 阅读 · 0 评论 -
Scala学习之路之篇七(Trait特征)
Scala Trait(特征)(多继承)Scala Trait(特征) 相当于 Java 的接口,实际上它比接口还功能强大。与接口不同的是,它还可以定义属性和方法的实现。一般情况下Scala的类只能够继承单一父类,但是如果是 Trait(特征) 的话就可以继承多个,从结果来看就是实现了【多重继承】。其实 Scala Trait(特征)更像 Java 的抽象类。Trait(特征) 定义的方式...原创 2019-04-29 16:04:22 · 140 阅读 · 0 评论 -
Scala学习之路之篇八(scala模式匹配)
Scala 模式匹配一个模式匹配包含了一系列备选项,每个都开始于关键字 case;每个备选项都包含了一个模式及一到多个表达式;箭头符号 “=>” 隔开了模式和表达式。match 对应 Java 里的 switch,但是写在选择器表达式之后。即: 选择器 match {备选项}。实例1:整型值模式匹配实例:object Test { def main(args: Arra...原创 2019-04-29 16:19:32 · 112 阅读 · 0 评论 -
Scala学习之路之篇九(scala正则表达式)
Scala 正则表达式Scala 通过 scala.util.matching 包中的 Regex 类来支持正则表达式实例1:使用正则表达式查找单词 Scala :import scala.util.matching.Regexobject Test { def main(args: Array[String]) { val pattern = "Scala"....原创 2019-04-29 16:37:24 · 1270 阅读 · 0 评论 -
Scala学习之路之篇十(scala异常处理)
Scala 异常处理1、抛出异常Scala 抛出异常的方法和 Java一样,使用 throw 方法实例1:抛出异常throw new IllegalArgumentException2、捕获异常异常捕捉的机制与其他语言中一样,如果有异常发生,catch字句是按次序捕捉的。在catch字句中,越具体的异常越要靠前,越普遍的异常越靠后;由于异常捕捉是按次序,如果最普遍的...原创 2019-04-29 16:49:17 · 297 阅读 · 0 评论 -
Scala学习之路之篇十一(scala提取器)
Scala 提取器(Extractor)提取器:是从传递给它的对象中提取出构造该对象的参数。Scala 提取器是一个带有unapply方法的对象,unapply方法算是apply方法的反向操作unapply接受一个对象,然后从对象中提取值,提取的值通常是用来构造该对象的值。实例1:邮件地址的提取器对象:object Test { def main(args: Array[S...原创 2019-04-29 17:10:40 · 170 阅读 · 0 评论 -
Scala学习之路之篇十二(文件读写 I/O)
Scala 文件 I/O文件写操作Scala 进行文件写操作,直接用的都是 java中的 I/O 类 (java.io.File):实例1:在当前目录下生成一个 test.txt 文件,并在文件内写入"菜鸟教程":import java.io._object Test { def main(args: Array[String]) { val writer =...原创 2019-04-29 17:18:51 · 159 阅读 · 0 评论 -
Scala学习之路之篇十三(scala多线程)
Scala 多线程多线程是同时执行多个线程的过程。 它允许您独立执行多个操作。可以通过使用多线程来实现多任务。线程是轻量级的子进程,占用较少的内存。多线程用于在Scala中开发并发应用程序。Scala不提供用于创建线程的任何单独的库。可以通过扩展 Thread类 或 Runnable接口 来创建线程。两者都提供了运行方法来提供具体的实现。1、Scala线程生命周期线程生命周期是线...原创 2019-04-29 17:54:59 · 8574 阅读 · 1 评论 -
使用Scala在IDEA中搭建Spark应用程序
一、idea社区版安装scala插件因为idea默认不支持scala开发环境,所以当需要使用idea搭建scala开发环境时,首先需要安装scala插件,具体安装办法如下。1、打开idea,点击configure下拉菜单中的plugins选项:2、在弹出对话框中点击红框按钮:3、在弹出最新对话框的搜索栏输入scala,在筛选出的内容中选择红框部分,点击右侧install按钮...转载 2019-04-30 10:01:24 · 463 阅读 · 0 评论