📝 Scala Collections教程

40篇技术文档
  Scala Collections教程

📅  最后修改于: 2020-11-02 04:25:21        🧑  作者: Mango

Scala具有丰富的集合库集。 Scala收藏可能是严格的或懒惰的。惰性集合的元素在访问之前可能不会消耗内存,例如范围。此外,集合可能是可变的(引用的内容可以更改)或不可变的(引用所引用的内容永远不会更改)。请注意,不可变集合可能包含可变项。本教程已经为初学者准备,可以帮助他们理解Scala Collections库,以便在基于Scala的程序中使用Collections。先决条件对于本教程,我们...

  Scala集合-概述

📅  最后修改于: 2020-11-02 04:25:38        🧑  作者: Mango

Scala具有丰富的集合库集。集合是事物的容器。这些容器可以是有序列的线性项目集,例如List,Tuple,Option,Map等。这些集合可以具有任意数量的元素,也可以限制为零或一个元素(例如Option)。收藏可能是严格的也可能是懒惰的。惰性集合的元素在访问之前可能不会消耗内存,例如Ranges。此外,集合可能是可变的(引用的内容可以更改)或不可变的(引用所引用的内容永远不会更改)。请注意,不...

  Scala集合-环境设置

📅  最后修改于: 2020-11-02 04:26:03        🧑  作者: Mango

Scala可以安装在任何基于UNIX或Windows的系统上。在机器上开始安装Scala之前,必须在计算机上安装Java 1.8或更高版本。请按照下面给出的步骤安装Scala。步骤1:验证Java安装首先,您需要在系统上安装Java软件开发套件(SDK)。要验证这一点,请根据所使用的平台执行以下两个命令之一。如果Java安装正确完成,则它将显示Java安装的当前版本和规范。下表中给出了示例输出。P...

  Scala集合-数组

📅  最后修改于: 2020-11-02 04:26:23        🧑  作者: Mango

Scala提供了一个数据结构array,用于存储相同类型元素的固定大小的顺序集合。数组用于存储数据集合,但是将数组视为相同类型的变量集合通常会更有用。无需声明单个变量(例如number0,number1,…和number99),而是声明一个数组变量(例如numbers),并使用numbers [0],numbers [1]和…,numbers [99]表示各个变量。本教程介绍如何使用索引变量声明数...

  Scala集合-多维数组

📅  最后修改于: 2020-11-02 04:26:37        🧑  作者: Mango

在许多情况下,您需要定义和使用多维数组(即,其元素为数组的数组)。例如,矩阵和表格是可以实现为二维阵列的结构的示例。以下是定义二维数组的示例-这是一个具有三个元素的数组,每个元素都是具有三个元素的整数数组。尝试以下示例程序来处理多维数组-例将以上程序保存在Demo.scala中。以下命令用于编译和执行该程序。命令输出...

  Scala集合-具有范围的数组

📅  最后修改于: 2020-11-02 04:26:53        🧑  作者: Mango

使用range()方法生成一个数组,该数组包含给定范围内的递增整数序列。您可以使用final参数作为创建序列的步骤;如果您不使用最终参数,则将step假定为1。让我们以创建范围为(10,20,2)的数组为例:这意味着创建一个数组,其元素之间的差值为10到20,范围差为2。该数组中的元素为10、12、14、16和18。 。另一个示例:范围(10,20)。这里没有给出范围差异,因此默认情况下假设1个元...

  Scala集合-ArrayBuffer

📅  最后修改于: 2020-11-02 04:27:11        🧑  作者: Mango

Scala提供了一个数据结构ArrayBuffer,当初始大小不足时可以更改大小。由于数组具有固定大小,并且数组中不能包含更多元素,因此ArrayBuffer是大小灵活的数组的替代方案。在内部,ArrayBuffer维护一个当前大小的数组来存储元素。添加新元素时,将检查大小。如果基础数组已满,则创建一个新的较大数组,并将所有元素复制到较大数组。声明ArrayBuffer变量以下是声明ArrayBu...

  Scala集合-列表

📅  最后修改于: 2020-11-02 04:27:43        🧑  作者: Mango

Scala列表与数组非常相似,这意味着列表的所有元素都具有相同的类型,但是有两个重要的区别。首先,列表是不可变的,这意味着列表的元素无法通过分配进行更改。其次,列表代表一个链表,而数组是平面的。元素类型为T的列表的类型写为List [T]。请尝试以下示例,以下是为各种数据类型定义的一些列表。可以使用两个基本构造块(尾部Nil和::定义为cons)来定义所有列表。 Nil也代表空列表。以上所有列表可...

  Scala集合-ListBuffer

📅  最后修改于: 2020-11-02 04:27:58        🧑  作者: Mango

Scala提供了一个数据结构ListBuffer,它在添加/删除列表中的元素时比List更有效。它提供了将元素添加,添加到列表的方法。声明ListBuffer变量以下是声明ListBuffer变量的语法。句法在这里,z被声明为Strings的列表缓冲区,该缓冲区最初为空。可以使用以下命令添加值-命令处理ListBuffer下面是一个示例程序,显示了如何创建,初始化和处理ListBuffer-例将以...

  Scala集合-ListSet

📅  最后修改于: 2020-11-02 04:28:14        🧑  作者: Mango

Scala集是同一类型的成对的不同元素的集合。换句话说,集合是不包含重复元素的集合。 ListSet实现不可变集并使用列表结构。存储元素时会保留元素插入顺序。声明ListSet变量以下是声明ListSet变量的语法。句法在这里,z被声明为具有三个成员的字符串列表集。可以使用以下命令添加值-命令处理清单集以下是显示如何创建,初始化和处理ListSet的示例程序-例将以上程序保存在Demo.scala...

  Scala集合-矢量

📅  最后修改于: 2020-11-02 04:28:29        🧑  作者: Mango

Scala Vector是一种通用的不可变数据结构,可以在其中随机访问元素。它通常用于大量数据收集。声明向量变量以下是声明Vector变量的语法。句法在这里,z被声明为具有三个成员的Strings的向量。可以使用以下命令添加值-命令处理向量下面是一个示例程序,显示了如何创建,初始化和处理Vector-例将以上程序保存在Demo.scala中。以下命令用于编译和执行该程序。命令输出...

  Scala集合-设置

📅  最后修改于: 2020-11-02 04:28:58        🧑  作者: Mango

Scala集是同一类型的成对的不同元素的集合。换句话说,集合是不包含重复元素的集合。有两种Sets,不变的和可变的。可变对象与不可变对象之间的区别在于,当对象不可变时,则不能更改对象本身。默认情况下,Scala使用不可变的Set。如果要使用可变Set,则必须显式导入scala.collection.mutable.Set类。如果要在同一集合中使用可变集和不可变集,则可以继续将不可变集称为Set,但...

  Scala集合-BitSet

📅  最后修改于: 2020-11-02 04:29:14        🧑  作者: Mango

比特集是可变和不可变比特集的通用基类。位集是一组非负整数,并表示为打包为64位字的位的可变大小数组。一个位集的内存占用量由存储在其中的最大数量表示。声明BitSet变量以下是声明BitSet变量的语法。句法在此,z被声明为具有三个成员的非负整数的位集。可以使用以下命令添加值-命令处理位集下面是一个示例程序,显示了如何创建,初始化和处理BitSet-例将以上程序保存在Demo.scala中。以下命令...

  Scala集合-HashSet

📅  最后修改于: 2020-11-02 04:29:29        🧑  作者: Mango

Scala集是同一类型的成对的不同元素的集合。换句话说,集合是不包含重复元素的集合。 HashSet实现不可变集并使用哈希表。不保留元素插入顺序。声明HashSet变量以下是用于声明HashSet变量的语法。句法在这里,z被声明为具有三个成员的String的哈希集。可以使用以下命令添加值-命令处理哈希集下面是一个示例程序,显示了如何创建,初始化和处理HashSet-例将以上程序保存在Demo.sc...

  Scala集合-TreeSet

📅  最后修改于: 2020-11-02 04:29:45        🧑  作者: Mango

Scala集是同一类型的成对的不同元素的集合。换句话说,集合是不包含重复元素的集合。 TreeSet实现不可变的集并按排序顺序保留元素。声明TreeSet变量以下是声明TreeSet变量的语法。句法在这里,z被声明为具有三个成员的字符串树集。可以使用以下命令添加值-命令处理树集以下是显示如何创建,初始化和处理TreeSet的示例程序-例将以上程序保存在Demo.scala中。以下命令用于编译和执行...