0
我想迭代一個接口片來找到我的特定結構的id並更改屬性。Go lang界面
type A struct {
ID ID
Steps []Step
}
type Step interface{}
type B struct {
ID ID
}
type C struct {
ID ID
}
func (s *A) findStepByID(id ID) (Step, error) {
for index, step := range s.Steps {
switch stepType := step.(type) {
case A:
if stepType.ID == id {
return step, nil
}
case B:
if stepType.ID == id {
return step, nil
}
default:
return nil, errors.New("no step found")
}
}
return nil, errors.New("no step found")
}
當我發現我的例如B
結構,然後我將設置B.ID = xy
這裏有什麼問題? –
問題是什麼? – I159
如何做到這一點,我得到的錯誤,步驟是一個沒有方法的接口 – Fesco