大数据
熊熊爱绵羊
这个作者很懒,什么都没留下…
展开
-
Scala的安装与使用
学习scala前需要先搭建环境,那么怎么安装使用scala呢? 首先到官网下载scala ,网址为Scala下载 最新版本为 scala-2.12.6 ,可以下载使用。 本人下载的是scala-2.11.7版本。 --window上使用的话,就下载scala-2.12.6.msi ,然后双击运行,直至安装成功,此时查看环境变量会发现path路径里面已经自动配置了 scala的bin目录...原创 2018-06-05 11:24:40 · 8698 阅读 · 0 评论 -
Scala类型参数
类型参数是什么? 类型参数其实就类似于Java中的泛型。也是定义一种类型参数,比如在集合,在类,在函数中,定义类型参数,然后就可以保证使用到该类型参数的地方,就肯定,也只能是这种类型。从而实现程序更好的健壮性。-- 1. 泛型类 ,顾名思义,其实就是在类的声明中,定义一些泛型类型,然后在类内部,比如field或者method,就可以使用这些泛型类型 。使用泛型类,通常是需要对类中的某些成员,...原创 2018-06-29 08:13:41 · 1925 阅读 · 0 评论 -
Scala模式匹配
模式匹配是Scala中非常有特色,非常强大的一种功能 。模式匹配,其实类似于Java中的switch case 语法, 即对一个值进行条件判断,然后针对不同的条件,进行不同的处理。 但是Scala的模式匹配的功能比Java的switch case语法的功能要强大地多,Java的switch case语法只能对值 进行匹配。但是scala的模式匹配除了可以对值进行匹配之外,还可以对...原创 2018-06-26 21:22:31 · 861 阅读 · 0 评论 -
Scala的Actor入门
Scala的Actor类似于Java中的多线程问题。但是不同的是,Scala的Actor提供的模型与多线程有所不同。 Scala的Actor尽可能的避免锁和共享的状态,从而避免多线程并发时出现资源争用的情况,进而提升多线程编程的性能。此外,Scala Actor的这种模型还可以避免死锁等一系列传统多线程编程的问题。Spark中使用的分布式多线程框架,是Akka,Akka也实现了类似Scala ...原创 2018-08-07 14:50:29 · 712 阅读 · 2 评论 -
Scala面向对象编程之 类
-- 定义一个简单的类 scala的类和java基本差不多,先定义各一个简单类演示://定义类,包含field以及方法 class HelloWorld{ private var name="leo" def sayHello(){println("Hello, "+name)} def getName= name } // 创建类的对象,并调用方法 val...原创 2018-06-09 22:00:57 · 534 阅读 · 0 评论 -
Scala函数编程之集合操作
Scala的集合体系结构 Scala中的集合体系主要包括: Iterable 、Seq、Set、Map 。其中Iterable是所有集合trait的根trait。这个结构与Java的集合体系非常相似。 Scala中的集合是分成可变和不可变两类集合的, 其中可变集合是说 ,集合的元素可以动态修改,而不可变集合的元素在初始化之后就无法修改了。分别对应scala.collection.mutab...原创 2018-06-23 22:01:59 · 573 阅读 · 0 评论 -
scala面向对象编程之 trait
-- 将trait 作为接口使用// scala中的 trait是一种特殊的概念。 //首先我们可以将Trait作为接口来使用,此时的Trait就与java中的接口非常相似 //trait中可以定义抽象方法,就与抽象类中的抽象方法一样,只要不给出方法的具体实现即可 // 类可以使用extends关键字继承trait ,注意,这里不是implement,而是extends ,在scala ...原创 2018-06-14 21:27:18 · 245 阅读 · 0 评论 -
Scala的相关知识(二)——函数、数组、Map与Tuple
在Scala中定义函数时,需要定义函数的函数名,参数,函数体。先写一个函数如下所示: -- 单行的函数 : def sayHello(name:String) =print("Hello,"+name) 如果函数体中有多行代码,则可以使用代码块的方式包裹多行代码,代码块中最后一行的返回值就是整个函数的返回值。与java中不同,不是使用return返回值的。注意:一定要有等号,才会有...原创 2018-06-06 17:24:31 · 864 阅读 · 0 评论 -
Scala函数式编程
Scala中的函数是Java中完全没有的概念,因为Java是完全面向对象的编程语言,没有任何面向过程编程语言的特性,因此Java中的一等公民是类和对象,而且只有方法的概念,即寄存和依赖于类和对象中的方法。Java中的方法绝不可能脱离类和对象独立存在。 而Scala是一门即面向对象,又面向过程的语言。因此在Scala中有非常好的面向对象的特性,可以使用Scala来基于面向对象的思想开发大型复杂的系...原创 2018-06-20 18:54:10 · 224 阅读 · 0 评论 -
Scala的相关知识(一)
Scala: scala是一种编译性语言,其底层也是基于java虚拟机来的。也就是jvm的一门编程语言,所有scala代码,都需要编译为字节码,然后交由java虚拟机来运行。所以Scala和Java是可以无缝互操作的, Scala可以任意调用Java代码。 -- scala解释器的使用: REPL:Read(取值) -> Evaluation(取值)->Print(打印)-&...原创 2018-06-05 12:04:10 · 263 阅读 · 0 评论 -
Scala隐式转换与隐式参数
Scala提供的隐式转换和隐式参数功能,是非常有特色的功能。是Java等编程语言所没有的功能。它允许程序员手动指定,将某种类型的对象转换为其他类型的对象,通过这些功能,可以实现非常强大,而且特殊的功能。 Scala的隐式转换,其实最核心的就是定义隐式转换函数,即implicit conversion function定义的隐式转换函数,只要在编写的程序内引入,就会被Scala自动使用。...原创 2018-06-29 14:51:28 · 253 阅读 · 0 评论