我想編寫一個Join帶有String()方法的任意對象的函數:package mainimport ( "fmt" "strings")type myint intfunc (i myint) String() string { return fmt.Sprintf("%d", i)}func main() { parts := []myint{myint(1), myint(5), myint(6)} fmt.Println(Join(parts, ", "))}func Join(parts []fmt.Stringer, sep string) string { stringParts := make([]string, len(parts)) for i, part := range(parts) { stringParts [i] = part.String() } return strings.Join(stringParts , sep)}http://play.golang.org/p/EhkbyibzHw[]myint無法傳遞給Join,因為它不是type fmt.Stringer,所以我必須寫:parts := []fmt.Stringer{myint(1), myint(5), myint(6)}但是,如果我需要parts另一個必須將值設置為int的操作怎么辦?我應該將其中的一部分切成myint薄片Stringer嗎?
鴨子在圍棋中鍵入
慕碼人8056858
2021-05-22 18:15:00