Learning Path
浏览 Scala 相关教程与章节。
主流编程语言、数据结构、设计模式、正则与基础算法。
教程
45
Scala for循环 Scala 循环 for 循环允许您编写一个执行指定次数的循环控制结构。 语法 Scala 语言中 for 循环的语法: for( var x..
Scala 方法与函数 Scala 有方法与函数,二者在语义上的区别很小。Scala 方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。 Scala 中的方法跟 Java 的类似,方法是组成类的一部分。 Scala 中的函数则是一个完整的对象,Scala 中的函数其实就是继承了 Trait 的类的对象。 Scala 中使用 val 语句可以定义函数,def 语句定义方法。 class Test{ ..
Scala IF...ELSE 语句 Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: if 语句 if 语句有布尔表达式及之后的语句块组成。 语法 if 语句的语法格式如下: if(布尔表达式) { // 如果布尔表达式为 true 则执行该语句块 } 如果布尔表达式为 true 则执行大括号内的语句块,否则跳过大..
Scala 安装 Scala 语言可以运行在 Window、Linux、Unix、 Mac OS X 等系统上。 Scala 是基于 Java 之上,大量使用 Java 的类库和变量,使用 Scala 之前必须先安装 Java(>1.5版本)。 Mac OS X 和 Linux 上安装 Scala 第一步:Java 设置 确保你本地已经安装了 JDK 1.5 以上版本,并且设置了 JAVA_HOME 环境变量及 JDK ..
Scala 简介 Scala 是 Scalable Language 的简写,意味着这种语言设计上支持大规模软件开发,是一门多范式的编程语言 Scala 语言是由 Martin Odersky 等人在 2003 年开发的,并于 2004 年首次发布。 Scala 运行于 Java 平台(Java 虚拟机),并兼容现有的 Java 程序。 Scala 的编译模型(独立编译,动态类加载)与 Java 和 C# 一样,所以 Scala ..
Scala Iterator(迭代器) Scala 集合 Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。 迭代器 it 的两个基本操作是 next 和 hasNext。 调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。 调用 it.hasNext() 用于检测集合中是否还有元素。 让迭代器 it 逐个返回所有元素最简单的方法是使用 while 循环: 实例 [mycod..
Scala List(列表) Scala 集合 Scala 列表类似于数组,它们所有元素的类型都相同,但是它们也有所不同:列表是不可变的,值一旦被定义了就不能改变,其次列表 具有递归的结构(也就是链接表结构)而数组不是。。 列表的元素类型 T 可以写成 List[T]。例如,以下列出了多种类型的列表: 实例 [mycode4 type='scala'] // 字符串列表 val site: List[String]..
Scala 字面量 在 Scala 中,字面量(Literals)是直接表示固定值的表达式。Scala支持各种类型的字面量,涵盖了数值、字符、字符串、布尔值等。 整型字面量 整型字面量用于 Int 类型,如果表示 Long,可以在数字后面添加 L 或者小写 l 作为后缀。 整型字面量可以是十进制、十六进制和八进制。 十进制:42, 0, -99十六进制:以0x或0X开头,如0x2A, 0x0, 0XFF八进制:Scala 2.10 之前..
Scala 循环 有的时候,我们可能需要多次执行同一块代码。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。 编程语言提供了更为复杂执行路径的多种控制结构。 循环语句允许我们多次执行一个语句或语句组,下面是大多数编程语言中循环语句的流程图: 循环类型 Scala 语言提供了以下几种循环类型。点击链接查看每个类型的细节。 循环类型 描述 while 循环 运行一系列语句,如果条件为true..
Scala Map(映射) Scala 集合 Map(映射)是一种可迭代的键值对(key/value)结构。所有的值都可以通过键来获取。 Map 中的键都是唯一的。 Map 也叫哈希表(Hash tables)。 Map 有两种类型,可变与不可变,区别在于可变对象可以修改它,而不可变对象不可以。 默认情况下 Scala 使用不可变 Map。如果你需要使用可变集合,你需要显式的引入 import scala.collection.mu..
Scala 运算符 一个运算符是一个符号,用于告诉编译器来执行指定的数学运算和逻辑运算。 Scala 含有丰富的内置运算符,包括以下几种类型: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 接下来我们将为大家详细介绍以上各种运算符的应用。 算术运算符 下表列出了 Scala 支持的算术运算符。 假定变量 A 为 10,B 为 20: 运算符 描述 实例 + 加号 A + B 运算结果为 30 - 减..
Scala Option(选项) Scala 集合 Scala Option(选项)类型用来表示一个值是可选的(有值或无值)。 Option[T] 是一个类型为 T 的可选值的容器: 如果值存在, Option[T] 就是一个 Some[T] ,如果不存在, Option[T] 就是对象 None 。 接下来我们来看一段代码: [mycode4 type='scala'] // 虽然 Scala 可以不定义变量的..
Scala 模式匹配 Scala 提供了强大的模式匹配机制,应用也非常广泛。 一个模式匹配包含了一系列备选项,每个都开始于关键字 case。每个备选项都包含了一个模式及一到多个表达式。箭头符号 => 隔开了模式和表达式。 以下是一个简单的整型值模式匹配实例: 实例 [mycode4 type='scala'] object Test { def main(args: Array[String])..
Scala 正则表达式 Scala 通过 scala.util.matching 包中的 Regex 类来支持正则表达式。以下实例演示了使用正则表达式查找单词 Scala : 实例 [mycode4 type='scala'] import scala.util.matching.Regex object Test { def main(args: Array[String]) { val pa..
Scala Set(集合) Scala 集合 Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。Scala 集合分为可变的和不可变的集合。 默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包。 默认引用 scala.collection.immutable.Set,不可变集合实例如下: 实例 [mycode4 type=�..
Scala 字符串 以下实例将字符串赋值给一个常量: 实例 [mycode4 type='scala'] object Test { val greeting: String = 'Hello,World!' def main(args: Array[String]) { println( greeting ) } } [/mycode4] 以上实例定义了变量..
Scala Trait(特征) Scala Trait(特征) 相当于 Java 的接口,实际上它比接口还功能强大。 与接口不同的是,它还可以定义属性和方法的实现。 一般情况下Scala的类只能够继承单一父类,但是如果是 Trait(特征) 的话就可以继承多个,从结果来看就是实现了多重继承。 Trait(特征) 定义的方式与类类似,但它使用的关键字是 trait,如下所示: 实例 [mycode4 type='scala&#..
Scala 元组 Scala 集合 与列表一样,元组也是不可变的,但与列表不同的是元组可以包含不同类型的元素。 元组的值是通过将单个的值包含在圆括号中构成的。例如: val t = (1, 3.14, 'Fred') 以上实例在元组中定义了三个元素,对应的类型分别为[Int, Double, java.lang.String]。 此外我们也可以使用以下方式来定义: val t = new Tuple3(..
Scala 教程 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。 Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库。 谁适合阅读本教程? 本教程适合想从零开始学习 Scala 编程语言的开发人员。当然本教程也会对一些模块进行深入..
Scala 变量 变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。 基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字母。 变量声明 在学习如何声明变量与常量之前,我们先来了解一些变量与常量。 变量: 在程序运行过程中其值可能发生改变的量叫做变量。如:时间,年龄。 常量:在程序运行过程中其值不会发..
Scala while 循环 Scala 循环 只要给定的条件为 true,Scala 语言中的 while 循环语句会重复执行循环体内的代码块。 语法 Scala 语言中 while 循环的语法: while(condition) { statement(s); } 在这里,statement(s) 可以是一个单独的语句,也可以是几个语句组成的代码块。condition 可以是任意的表达式,当为任意非零值时都为 true。..