Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menukar Tatasusunan Integer kepada Rentetan Terhad dalam Go menggunakan One-Liner?

Bagaimana untuk Menukar Tatasusunan Integer kepada Rentetan Terhad dalam Go menggunakan One-Liner?

DDD
Lepaskan: 2024-12-05 12:36:14
asal
879 orang telah melayarinya

How to Convert an Array of Integers to a Delimited String in Go using a One-Liner?

One-Liner: Mengubah Tatasusunan Integer kepada Rentetan

Dalam bidang pengaturcaraan, selalunya terdapat keperluan untuk menukar koleksi integer kepada yang dibataskan rentetan. Pertimbangkan tatasusunan integer []int{1, 2, 3} yang anda ingin nyatakan sebagai "1, 2, 3" dengan pembatas yang boleh disesuaikan. Walaupun Python dan Go menyediakan penyelesaian terbina dalam yang fasih, artikel ini meneroka satu pelapis elegan yang boleh mencapai transformasi dengan mudah dalam Go.

Penukaran Tertakluk dalam Go

Pertama, tatasusunan fungsi utilitiToString ditakrifkan untuk memenuhi tujuan penukaran. Fungsi ini mengambil tatasusunan integer dan pembatas sebagai parameter dan mengembalikan rentetan yang diingini.

func arrayToString(a []int, delim string) string {
    return strings.Trim(strings.Replace(fmt.Sprint(a), " ", delim, -1), "[]")
}
Salin selepas log masuk

Inti penukaran terletak dalam rentetan.Pangkas dan rentetan.Ganti fungsi. fmt.Sprint(a) menukar tatasusunan kepada rentetan, yang kemudiannya diubah suai dengan menggantikan " " (aksara ruang) dengan pembatas yang dikehendaki. Argumen -1 dalam Ganti memastikan semua kejadian ruang diganti. Akhir sekali, strings.Trim mengalih keluar sebarang aksara "[]" di hadapan atau di belakang yang mungkin timbul daripada tatasusunan asal.

Penggunaan Serbaguna

Fungsi arrayToString memberi anda kuasa untuk menukar tatasusunan integer kepada rentetan dengan pembatas yang berbeza-beza. Sebagai contoh, kod:

A := []int{1, 2, 3, 4, 5, 6, 7, 8, 9}
fmt.Println(arrayToString(A, ", ")) // Output: "1, 2, 3, 4, 5, 6, 7, 8, 9"
fmt.Println(arrayToString(A, ", ")) // Output: "1, 2, 3, 4, 5, 6, 7, 8, 9"
fmt.Println(arrayToString(A, ";")) // Output: "1; 2; 3; 4; 5; 6; 7; 8; 9"
Salin selepas log masuk

menunjukkan fleksibiliti penukaran, menghasilkan rentetan dengan pembatas berbeza berdasarkan input.

Menyesuaikan Output

Jika anda lebih suka sertakan ruang selepas pembatas, anda boleh meningkatkan fungsi arrayToString sebagai berikut:

func arrayToString(a []int, delim string) string {
    return strings.Trim(strings.Replace(fmt.Sprint(a), " ", delim + " ", -1), "[]")
}
Salin selepas log masuk

Tambahan ini memastikan ruang disisipkan selepas setiap pembatas dalam rentetan keluaran.

Kesimpulan

Dengan memanfaatkan kuasa rentetan.Pangkas dan rentetan .Menggantikan fungsi, satu pelapik kami dengan cekap mengubah tatasusunan integer menjadi rentetan terhad dalam Go. Teknik ini menyediakan fleksibiliti dalam pembatas dan membolehkan penyesuaian dalam pemformatan output, menjadikannya alat yang berharga untuk pelbagai tugas manipulasi rentetan.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tatasusunan Integer kepada Rentetan Terhad dalam Go menggunakan One-Liner?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan