我不太清楚如何使用 Swift 上的类在堆栈上声明“如果可选”。这是我使用类在 Swift 上的堆栈的通用代码(本书使用结构,但我被告知使用类)。
class Stack {
var items = [String]()
func push(item: String) {
items.append(item)
}
func pop() -> String {
return items.removeLast()
}
func length() -> Int {
return items.count
}
}
我创建了一个 Stack 实例:
var stringStack = Stack()
...
stringStack.pop()
当我弹出时,堆栈会删除最后一项。我想这样做,如果我执行 pop(0),堆栈将删除第一项,但如果我只执行 pop(),堆栈仅删除最后一项。我正在考虑使用 if ... return items.removeAtIndex(0) 或 else items.removeLast() 创建一个可选值。我似乎无法正确使用语法,并且不断出错。我能够做到这一点,以便 pop(0) 删除堆栈中的第一项,但如果我执行 pop(),则会出现错误。如果有人可以向我展示一个代码来做我想做的事情,那将非常有帮助。我在编码方面仍然非常非常新,我知道的不多。不好意思给您添麻烦了!