Scala 第2页
Scala 教程 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。 Scala 源代码被编译成 Java 字节码,所以它可以运行于 JVM 之上,并可以调用现有的 Java 类库。 谁适合阅读本教程? 本教程适合想从零开始学习 Scala 编程语言的开发人员。当然本教程也会对一些模块进行深入..
4.5 Scala集合:Stream流-知趣

4.5 Scala集合:Stream流

什么是Stream流?根据Scala文档,流是类似于列表的数据结构,只是流的元素是惰性计算机制。因此,可以拥有无限长的流!Stream(流)与List类似,但是它是延迟计算的,所以可以非常非常长。// 创建...
4.6 Scala集合:Vector-知趣

4.6 Scala集合:Vector

什么是向量?根据Scala文档,Vector是类似于List的数据结构。但是,它解决了List中随机访问的低效问题。【示例】学习如何使用Scala的不可变向量来执行一些常见的操作,比如初始化Vector,访问特...
4.7 Scala集合:Range和Tuple-知趣

4.7 Scala集合:Range和Tuple

RangeRange定义一个范围,指定开始、结束和步长,通常用于填充数据结构和遍历for循环。object RangeDemo { def main(args: Array[String]): Unit = {   // 使用方法to来创建Range(包含上限)  ...
4.8 Scala集合:Option-知趣

4.8 Scala集合:Option

在Scala中,Option[T]是给定类型的0或1个元素的容器。Option 是一个数据类型,用来表明一些数据的“有”或“无”,可以是Some[T]或None[T],其中T可以是任何给定类型。一个Some 实例可以存储任...
4.9 Scala集合类上的高阶方法-知趣

4.9 Scala集合类上的高阶方法

Scala集合的真正强大之处在于带来了其高阶方法。一个高阶方法使用一个函数作为其输入参数。需要特别注意的是,一个高阶方法并不改变集合。下面是Scala集合的一些最主要的高阶方法。1、mapScala ...
4.10 使用for/yield组合创建新集合-知趣

4.10 使用for/yield组合创建新集合

在Scala的for表达式中,可以使用yield关键字来生成新的集合:val nieces = Array('java', 'python', 'scala', 'php')for (n <- nieces) yield n.capitalize​// 使用 for/yield 创建新数组va...
5.1 函数字面量-知趣

5.1 函数字面量

函数是一个可执行代码块,它接收输入参数返回一个值。它概念上与数学中的函数相似,它接收输入并返回一个输出。Scala是一个函数式编程语言,它将函数当作一等公民;一个函数可以像一个变量一样...
5.2 函数方法和函数参数-知趣

5.2 函数方法和函数参数

函数方法也可以使用def关键字来定义有名字的函数。在Scala 中,使用关键字def 定义函数,其语法格式如下:def 函数名(参数1:数据类型,参数2:数据类型):函数返回类型= {   函数体}这种方式,通常...
5.3 高阶函数-知趣

5.3 高阶函数

什么是高阶函数?在scala中,函数可以作为参数来传递。下面的代码定义一个接受函数作为参数的函数:// 函数定义def operation(func:(Int, Int) => Int) = {   val result = func(4,4)   pri...
5.4 闭包与函数柯里化-知趣

5.4 闭包与函数柯里化

闭包闭包是一个函数,其返回值依赖于在该函数外声明的一个或多个变量的值。请看下面的代码:var y = 3val multiplier = (x:Int) => x * ymultiplier(2)在上面的代码中,multiplier就是一个闭...
5.5 嵌套函数-知趣

5.5 嵌套函数

Scala允许用户在函数中定义函数。这称为嵌套函数,其中内部函数称为局部函数。以下代码表示嵌套的函数。def bookAssignAndDisplay(bookId:Int,bookname:String) = { def getBookDetails(bookId:...
5.6 隐式函数-知趣

5.6 隐式函数

在本教程中,我们将学习如何创建隐式函数。通过使用隐式函数,我们可以为几乎任何类型或类提供扩展方法或函数。 顾名思义,Scala从一开始就是可扩展的。隐式的用法,是Scala提供的特性之一,通...
5.7 类型化函数,多态函数和符号函数-知趣

5.7 类型化函数,多态函数和符号函数

类型化函数所谓类型化函数,指的是在调用函数时可以指定参数的类型。Scala的类型化函数通过变量的使用提供了更大的灵活性。那么,如何定义一个泛型类型函数将指定其参数的类型?下面我们将创建...
5.8 尾递归函数-知趣

5.8 尾递归函数

在本节中,我们将学习如何创建尾递归(tail recursive)函数,以及如何使用@annotation.tailrec注解,这将指示编译器应用任何进一步的优化。如何定义尾递归函数?在下面的示例中,我们定义一个...
6.1 Scala函数式编程-知趣

6.1 Scala函数式编程

尽管Scala是一种混合的面向对象和函数式编程语言,但它强调函数式编程。这就是为什么它是一种强大的语言。如果将Scala作为一种函数式编程语言使用,而不只是把它当作另一种面向对象编程语言来使...
7.1 类和构造函数-知趣

7.1 类和构造函数

类是一个面向对象编程概念,提供了一个高级编程抽象。从本质上来说,类是代码组织技术,将数据和所有数据的操作绑定在一起。从概念上来说,类代表一个属性和行为的实体。类是在运行时创建对象的...