在SmallTalk中使用LinkedList类?

时间:2010-02-20 00:10:30

标签: linked-list smalltalk

我不确定我是否完全理解如何使用SmallTalk Visual Works提供的LinkedList类。我可以通过简单的操作来创建类的实例:

myList := LinkedList new.

但是如何添加节点。我尝试创建一个Link类的实例并设置一个值,但它似乎没有工作。

myLink := Link new.
myLink value: 3.

我是smalltalk的新手,非常感谢任何帮助!

2 个答案:

答案 0 :(得分:4)

作为一个新手而不是学习如何使用OrderedCollection。然后看看这两个类的方法,看看它们的相同点和不同点。你会发现它们本质上是相同的,因为整个区别在于在集合中间插入和删除元素的性能。在OrderedCollection中,复制整个集合,而在LinkedList中,只有“指针”适用于插入的节点。

实际上很少使用LinkedList,因为OrderedCollection对大多数(如果不是全部)需求都足够好。

答案 1 :(得分:3)

您应该使用它的方式是通过子类化链接,例如添加value实例变量和两个方法#value#value:。但正如Janko所说,我不会打扰并只使用OrderedCollection。