Smalltalk 语言 字面集合 Array Set Dictionary 基础用法

Smalltalkamuwap 发布于 7 天前 6 次阅读


Smalltalk【1】 语言中的 Array【2】、Set【3】 和 Dictionary【4】 基础用法详解

Smalltalk 是一种面向对象的编程语言,以其简洁、直观和易学著称。在 Smalltalk 中,数据结构【5】是构建程序的基础,其中 Array、Set 和 Dictionary 是三种常用的数据结构。本文将围绕这三种数据结构的基础用法进行详细介绍,帮助读者更好地理解和应用 Smalltalk 语言。

Array

Array(数组)是 Smalltalk 中最基本的数据结构之一,用于存储一系列有序【6】的元素【7】。在 Smalltalk 中,创建一个 Array 非常简单,可以使用 `Array new: size` 方法【8】来创建一个指定大小的空数组。

创建和初始化【9】 Array

smalltalk
| array |
array := Array new: 5. % 创建一个大小为 5 的空数组

向 Array 中添加元素【10】

可以使用 `add: anObject` 方法向 Array 中添加元素。

smalltalk
array add: 'first'.
array add: 'second'.
array add: 'third'.

访问 Array 中的元素

可以通过索引【11】来访问 Array 中的元素,索引从 0 开始。

smalltalk
| element |
element := array at: 1. % 获取索引为 1 的元素

遍历【12】 Array

可以使用 `do: aBlock` 方法遍历 Array 中的所有元素。

smalltalk
array do: [ :anElement |
anElement printNl.
].

删除 Array 中的元素

可以使用 `remove: anObject` 方法删除 Array 中的元素。

smalltalk
array remove: 'second'.

Set

Set(集合)是 Smalltalk 中的另一种基本数据结构,用于存储一系列无序【13】且不重复的元素。在 Smalltalk 中,创建一个 Set 可以使用 `Set new` 方法。

创建和初始化 Set

smalltalk
| set |
set := Set new.

向 Set 中添加元素

可以使用 `add: anObject` 方法向 Set 中添加元素。

smalltalk
set add: 'first'.
set add: 'second'.
set add: 'third'.

检查元素是否存在于 Set 中

可以使用 `includes: anObject` 方法检查元素是否存在于 Set 中。

smalltalk
| isPresent |
isPresent := set includes: 'second'.

遍历 Set

Set 中的元素是无序的,因此遍历 Set 时需要使用 `do: aBlock` 方法。

smalltalk
set do: [ :anElement |
anElement printNl.
].

删除 Set 中的元素

Set 中的元素是唯一的,因此删除操作通常不需要指定具体的元素。

smalltalk
set remove: 'second'.

Dictionary

Dictionary(字典)是 Smalltalk 中的一种关联数据结构,用于存储键值对【14】。在 Smalltalk 中,创建一个 Dictionary 可以使用 `Dictionary new` 方法。

创建和初始化 Dictionary

smalltalk
| dict |
dict := Dictionary new.

向 Dictionary 中添加键值对

可以使用 `at: key put: value` 方法向 Dictionary 中添加键值对。

smalltalk
dict at: 'key1' put: 'value1'.
dict at: 'key2' put: 'value2'.

获取 Dictionary 中的值

可以使用 `at: key` 方法获取 Dictionary 中指定键的值。

smalltalk
| value |
value := dict at: 'key1'.

遍历 Dictionary

可以使用 `do: aBlock` 方法遍历 Dictionary 中的所有键值对。

smalltalk
dict do: [ :key :value |
key printNl.
value printNl.
].

删除 Dictionary 中的键值对

可以使用 `remove: key` 方法删除 Dictionary 中指定键的键值对。

smalltalk
dict remove: 'key1'.

总结

本文介绍了 Smalltalk 语言中的 Array、Set 和 Dictionary 三种基本数据结构的基础用法。通过学习这些数据结构,读者可以更好地理解和应用 Smalltalk 语言,构建出功能强大且易于维护的程序。在实际编程中,选择合适的数据结构对于提高程序性能和可读性至关重要。希望本文能够帮助读者在 Smalltalk 编程的道路上更进一步。