我不确定我是否完全理解如何使用 SmallTalk Visual Works 提供的 LinkedList 类。我可以通过简单的操作来创建该类的实例:
myList := LinkedList new.
但是如何添加节点。我尝试创建 Link 类的实例并设置一个值,但它似乎不起作用。
myLink := Link new.
myLink value: 3.
我对 Smalltalk 非常陌生,任何帮助将不胜感激!
作为新手,最好学习如何使用 OrderedCollection。然后看一下两个类的方法,看看有什么异同。您会发现它们本质上是相同的,因为全部区别在于在集合中间插入和删除元素的性能。在 OrderedCollection 中,会复制整个集合,而在 LinkedList 中,仅将“指针”适应插入的节点。
在实践中,LinkedList 很少使用,因为 OrderedCollection 足以满足大多数(如果不是全部)需求。
您应该使用它的方式是通过子类化链接,例如添加一个
value
实例变量和两个方法#value
和#value:
。但正如 Janko 所说,我不会打扰,只使用 OrderedCollection。
您需要添加新创建的链接(又名节点) 到链接列表,可以是列表的前面,也可以是列表中最后一项的后面。
列表中的第一项或最后一项。