Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menambahkan Rentetan pada Slice{} Antara Muka Variadik dalam Go?
Dalam Go, fungsi append() membenarkan anda menambahkan elemen pada kepingan jenis yang sama. Walau bagaimanapun, apabila berurusan dengan kaedah yang menerima kepingan hujah berubah jenis ...antara muka{}, menambahkan rentetan secara langsung menggunakan append("beberapa rentetan", v) mengakibatkan ralat.
Untuk berjaya menambah rentetan kepada kepingan hujah pembolehubah, anda perlu menggunakan kepingan nilai antara muka{}. Ini kerana ...antara muka{} membenarkan unsur apa-apa jenis. Untuk mencapai ini, anda boleh membalut rentetan awal dalam kepingan []antara muka{}:
func (l Log) Error(v ...interface{}) { stringInterface := []interface{}{" ERROR "} l.Out.Println(append(stringInterface, v...)) }
Ini membalut rentetan ERROR dalam kepingan []antara muka{}, yang kemudiannya boleh ditambah pada pembolehubah argument slice v.
Berikut ialah contoh:
package main import "fmt" func main() { s := "first" rest := []interface{}{"second", 3} all := append([]interface{}{s}, rest...) fmt.Println(all) }
Output:
[first second 3]
Atas ialah kandungan terperinci Bagaimana untuk Menambahkan Rentetan pada Slice{} Antara Muka Variadik dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!