假设您真的想从头开始,而不是使用现有的完美堆栈实现之一,那么我建议您:
- 创建一个“ MyStack
”类,该类实现所需的任何接口(也许列出 ?) - 在MyStack中,为每个链接列表项创建一个“私有静态最终类Node
”内部类。每个节点都包含对类型T对象的引用和对“下一个”节点的引用。 - 向MyStack添加“ topOfStack”节点引用。
- 推入和弹出操作仅需要在此topOfStack节点上进行。如果为空,则堆栈为空。我建议使用与标准Java堆栈相同的方法签名和语义,以避免以后造成混淆。
- 最后实现您需要的任何其他方法。奖励积分,以这样的方式实现“可迭代
”它记住在没有任何额外的存储分配创建迭代器中的时刻堆栈的不可变的状态(这 是 可能的:-))



