Scala传名参数(By-Name)
摘要:1.=> 在了解Scala的By-Name参数之前,先了解下“=>”在Scala中有几种用法: 1.对于值,“=>”相当于lambda表达式。如: 2.对于类型,“=>”两端的类型(如,A => B、(A, B) => C等)。它对于Function<n>[A[, B...], T]是一个语法糖。一
阅读全文
posted @
2018-08-31 18:19
duanxz
阅读(537)
推荐(0) 编辑
Scala中的柯里化
摘要:一、初识Currying柯里化 柯里化(Currying)技术 Christopher Strachey 以逻辑学家 Haskell Curry 命名的(尽管它是 Moses Schnfinkel 和 Gottlob Frege 发明的)。它是把接受多个参数的函数变换成接受一个单一参数(最初函数的第
阅读全文
posted @
2018-08-31 17:45
duanxz
阅读(4213)
推荐(1) 编辑
函数与闭包详解
摘要:函数的表现形式 1、方法 定义:定义函数最通用的方法就是作为某个对象的成员。这种函数被称为方法。 1 2 3 4 5 6 7 8 9 10 11 2、本地函数 上面的processFile方法展示了函数式编程风格的重要设计原则:程序应该被分割理解成若干个小的函数,每一块都实现一个完备的任务,每一块都
阅读全文
posted @
2018-08-29 15:18
duanxz
阅读(4330)
推荐(0) 编辑
Scala的内建控制结构
摘要:Scala中的内建控制机构仅有if、while、for、try、match和函数调用。虽然Scala的基础控制结构少,但也足以支持指令式语言里所有的实质内容。因为它们都能产生值,有助于缩短代码。 程序员可以通过使用返回值的控制结构简化代码,避免创建临时变量来保存控制结构中的计算结果。 1 If表达式
阅读全文
posted @
2018-08-21 14:21
duanxz
阅读(590)
推荐(0) 编辑
Scala函数式对象-有理数
摘要:有理数类的表示 实现规范:支持有理数的加减乘除,并支持有理数的规范表示 1.定义Rational 首先,考虑用户如何使用这个类,我们已经决定使用“Immutable”方式来使用Rational对象,我们需要用户在定义Rational对象时提供分子和分母。 class Rational(n:Int,
阅读全文
posted @
2018-08-21 10:06
duanxz
阅读(704)
推荐(0) 编辑
scala 基本类型和操作
摘要:Scala基本类型 Scala中的基本数据类型如下图: (来源:Programming in scala) 从上表中可以看出,Scala的基本数据类型与Java中的基本数据类型是一一对应的,不同的是Scala的基本数据类型头字母必须大写,本节以Int、Long、String、Char、Double及
阅读全文
posted @
2018-08-11 22:50
duanxz
阅读(8149)
推荐(0) 编辑
Scala集合类型详解
摘要:Scala集合 Scala提供了一套很好的集合实现,提供了一些集合类型的抽象。 Scala 集合分为可变的和不可变的集合。 可变集合可以在适当的地方被更新或扩展。这意味着你可以修改,添加,移除一个集合的元素。而不可变集合类永远不会改变。不过,你仍然可以模拟添加,移除或更新操作。但是这些操作将在每一种
阅读全文
posted @
2018-08-11 18:38
duanxz
阅读(7595)
推荐(0) 编辑
Scala类与对象
摘要:类简介 简介 类是对象的蓝图。一旦你定义了类,就可以用关键字new根据类的蓝图创建对象。在类的定义里,可以放置字段和方法,这些被笼统地称为成员。对于字段,不管是val还是var定义的,都是指向对象的变量。对于方法,用def定义,包含了可执行代码。字段保留了对象的状态或数据,而方法使用这些数据执行对象
阅读全文
posted @
2018-08-11 12:37
duanxz
阅读(3547)
推荐(0) 编辑
Scala变量
摘要:变量是只不过是保留内存位置来存储值。这意味着,当创建一个变量,会在内存中保留一些空间。 基于变量的数据类型,所述编译器分配存储器,并决定什么可以被存储在保留存储器。因此,通过分配不同的数据类型的变量,可以存储整数,小数,或字符在这些变量。 变量声明 Scala有两种变量,val和var。val类似于
阅读全文
posted @
2018-08-11 12:34
duanxz
阅读(1934)
推荐(0) 编辑
函数式编程思想
摘要:函数式编程思想 1、函数式编程简介 背景 函数式编程诞生于50多年前。现在越来越多的人开始接受并进行函数式编程的实践。不仅最古老的函数式语言 Lisp 重获青春,而且新的函数式语言层出不穷,比如 Erlang、clojure、Scala、F#等等。目前最当红的Objective-C, Python、
阅读全文
posted @
2015-11-12 11:18
duanxz
阅读(912)
推荐(0) 编辑
影响Scala语言设计的因素列表
摘要:Scala语言设计概述 Scala的设计受许多编程语言和研究思想的影响。事实上,仅很少的Scala的特点是全新的;大多数都已经被以另外的形式用在其他语言中了。Scala的革新主要来源于它是如何构造并放在一起的。在这部分里,我们罗列了对Scala设计的主要影响。列表并不全——因为围绕着编程语言的设计有
阅读全文
posted @
2015-11-10 18:01
duanxz
阅读(283)
推荐(0) 编辑
三、使用maven创建scala工程(scala和java混一起)
摘要:本文先叙述如何配置eclipse中maven+scala的开发环境,之后,叙述如何实现spark的本地运行。最后,成功运行scala编写的spark程序。 刚开始我的eclipse+maven环境是配置好的。 系统:win7 eclipse版本:Luna Release(4.4.0) maven是从
阅读全文
posted @
2014-03-27 15:06
duanxz
阅读(9120)
推荐(0) 编辑
二、java 与 scala相互调用
摘要:介绍:scala 是简化的java,运行于jvm的脚步语言。Java和scala通过各自编译器编译过都是jvm能解析class文件。本文介绍java和scala如何互调 scala的源代码文件是以.scala为后缀的,编译后的文件class文件。 1.scala使用JDK的java类 用法:impo
阅读全文
posted @
2014-03-27 11:33
duanxz
阅读(7862)
推荐(0) 编辑
Scala总结
摘要:Scala总结 概述 scala是一门以Java虚拟机(JVM)为目标运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。 scala是纯粹的面向对象的语言。java虽然是面向对象的语言,但是它不是纯粹的,因为java的基本数据类型不是类,并且在java中还有静态成员变量和静态方
阅读全文
posted @
2014-03-27 09:07
duanxz
阅读(1344)
推荐(0) 编辑
二、Spark在Windows下的环境搭建
摘要:由于Spark是用Scala来写的,所以Spark对Scala肯定是原生态支持的,因此这里以Scala为主来介绍Spark环境的搭建,主要包括四个步骤,分别是:JDK的安装,Scala的安装,Spark的安装,Hadoop的下载和配置。为了突出”From Scratch”的特点(都是标题没选好的缘故
阅读全文
posted @
2014-03-26 18:21
duanxz
阅读(1990)
推荐(0) 编辑
Scala程序编译运行
摘要:Scala 解释器 开始Scala最简单的方法是使用Scala解释器,它是一个编写Scala表达式和程序的交互式“shell”。简单地在解释器里输入一个表达式,它将计算这个表达式并打印结果值。Scala的交互式shell就叫做scala。你可以在命令提示符里输入scala使用它: 示例: 说明: 一
阅读全文
posted @
2013-07-31 16:10
duanxz
阅读(4370)
推荐(0) 编辑