#小白一枚,问题描述:定义了一个方法去输出,结果不是理想的输出
package main
import (
"fmt"
"strconv"
)
func main() {
var s str
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Push(4)
s.Pop()
s.Push(1)
fmt.Println(s.Str)
}
type str struct {
i int
d [10]int
}
func (s *str) Push(k int) {
s.d[s.i] = k
s.i++
}
func (s *str) Pop() int {
s.i--
return s.d[s.i]
}
func (s str) Str() string {
var result string
for i := 0; i <= s.i; i++ {
result = result + "[" + strconv.Itoa(s.i) + ":" + strconv.Itoa(s.d[i]) + "]"
}
return result
}