Dalam beberapa tahun kebelakangan ini, golang semakin popular dalam bidang pengaturcaraan. Ia mudah dipelajari, mempunyai prestasi serentak yang cekap dan perpustakaan standard yang berkuasa. Walau bagaimanapun, ramai pengaturcara masih menghadapi cabaran apabila mereka perlu menukar rentetan kepada tatasusunan. Dalam artikel ini, kami akan memperkenalkan beberapa kaedah untuk menyelesaikan masalah ini, membolehkan anda melengkapkan penukaran antara rentetan dan tatasusunan dengan lebih mudah.
Kaedah 1: Gunakan fungsi Split bagi pakej rentetan
Pakej rentetan dalam golang menyediakan banyak fungsi berguna untuk memproses rentetan. Antaranya ialah fungsi Split, yang membelah rentetan mengikut pembatas yang ditentukan dan mengembalikan hirisan rentetan. Kita boleh menukar rentetan kepada tatasusunan dengan menggunakan fungsi ini Kod sampel adalah seperti berikut:
import ( "fmt" "strings" ) func main() { str := "a,b,c,d" arr := strings.Split(str, ",") fmt.Println(arr) }
Dalam kod di atas, kita mula-mula menentukan str pembolehubah yang mengandungi berbilang rentetan yang dipisahkan dengan koma. Kemudian, kami menggunakan fungsi Split untuk memisahkan rentetan dengan koma, dan kemudian menyimpan hirisan rentetan berpecah dalam arr pembolehubah. Akhir sekali, kami mengeluarkan kepingan rentetan ini ke konsol melalui fungsi Println dalam pakej fmt.
Jalankan atur cara di atas, anda akan mendapat output berikut:
[a b c d]
Seperti yang anda lihat, fungsi ini berjaya menukar rentetan kepada tatasusunan yang mengandungi berbilang rentetan.
Kaedah 2: Gunakan fungsi Split bagi pakej strconv dan pakej rentetan
Jika anda perlu menukar rentetan yang mengandungi nombor kepada tatasusunan integer, kita boleh menggunakan fungsi Split dahulu pakej rentetan untuk menukar aksara Pisahkan rentetan mengikut pembatas yang ditentukan, dan kemudian tukar rentetan pecahan kepada integer. Ini boleh dilakukan menggunakan fungsi Atoi daripada pakej strconv, yang menukar rentetan kepada integer. Berikut ialah contoh:
import ( "fmt" "strconv" "strings" ) func main() { str := "1,2,3,4" arrStr := strings.Split(str, ",") arr := make([]int, len(arrStr)) for i, s := range arrStr { n, _ := strconv.Atoi(s) arr[i] = n } fmt.Println(arr) }
Dalam kod di atas, kami mula-mula memisahkan rentetan yang mengandungi nombor dengan koma, menukar setiap rentetan yang dipisahkan kepada integer dan menyimpannya dalam jenis int dalam tatasusunan. Akhir sekali, kami mengeluarkan tatasusunan ini ke konsol melalui fungsi fmt.Printf.
Kaedah 3: Gunakan gelung for dan fungsi indeks bagi pakej rentetan
Kaedah lain ialah menggunakan gelung for dan fungsi indeks pakej rentetan untuk menukar antara rentetan dan tatasusunan. Kod sampel adalah seperti berikut:
import ( "fmt" "strings" ) func main() { str := "a,b,c,d" arr := make([]string, len(str)) for i, r := range str { if r == ',' { continue } arr[i] = string(r) } fmt.Println(arr) }
Dalam kod di atas, kami sekali lagi mentakrifkan pembolehubah str yang mengandungi berbilang rentetan yang dipisahkan dengan koma. Kami kemudian mengulangi rentetan menggunakan gelung for dan fungsi indeks pakej rentetan, menyimpan setiap aksara ke dalam tatasusunan rentetan. Memandangkan fungsi indeks mengembalikan kedudukan watak dalam rentetan (bukan watak itu sendiri), kita mesti menggunakan fungsi rentetan untuk menukarnya kepada rentetan sebelum kita boleh menyimpannya dalam tatasusunan. Jika aksara semasa ialah koma, kami melangkaunya kerana kami tidak perlu menyimpan pembatas dalam tatasusunan. Akhir sekali, kami mengeluarkan kepingan rentetan ini ke konsol melalui fungsi Println dalam pakej fmt.
Ringkasan:
Dalam artikel ini, kami memperkenalkan beberapa kaedah untuk menukar rentetan kepada tatasusunan, termasuk menggunakan fungsi Split bagi pakej rentetan, menggunakan pakej strconv dan fungsi Split bagi pakej rentetan dan Gunakan gelung for dan fungsi indeks bagi pakej rentetan. Tidak kira kaedah yang anda pilih, anda boleh menukar rentetan kepada tatasusunan dengan mudah dan memanipulasinya lagi.
Atas ialah kandungan terperinci golang sting convert array. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!