Go 中的自訂ToString() 功能
Go 語言提供了strings.Join 函數來連接字串切片,但如果你想要怎麼辦使用自訂字串表示形式連接任意物件?當您需要傳遞本身不實作 ToString() 方法的非字串物件時,就會出現這個問題。
自訂ToString() 介面
解決這個問題問題,可以建立自訂ToStringConverter 介面:
type ToStringConverter interface { ToString() string }
然後可以將實作此介面的任何物件傳遞給修改後的Join函數:
func Join(a []ToStringConverter, sep string) string
實作 ToString()
要啟用自訂字串表示,只需為任何命名類型實作 String() 方法:
package main import "fmt" type bin int func (b bin) String() string { return fmt.Sprintf("%b", b) } func main() { fmt.Println(bin(42)) }
遊樂場和輸出
遊樂場連結:[http://play.golang.org/p/Azql7_pDAA](http://play.gol ang.org/p/Azql7_pDAA)
輸出:
101010
這種方法允許字串連接具有更大的靈活性,使您能夠合併具有自訂字串表示形式的非字串物件。
以上是如何在 Go 中為非字串物件實作自訂 ToString() 功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!