Rumah > Artikel > pembangunan bahagian belakang > susunan aliran golang
Dengan peningkatan populariti Golang, semakin ramai pembangun mula menggunakannya untuk pengaturcaraan. Walau bagaimanapun, dalam beberapa kes khas, strim yang boleh diulang (seperti membaca fail atau strim rangkaian) perlu ditukar kepada tatasusunan untuk diproses. Dalam artikel ini, kami akan menerangkan cara melaksanakan fungsi ini.
Mengapa menukar strim kepada tatasusunan?
Dalam sesetengah senario aplikasi, kami mungkin perlu menukar data dalam strim yang boleh diulang (seperti membaca fail atau aliran rangkaian) kepada tatasusunan untuk diproses. Sebagai contoh, apabila memproses sejumlah besar data, kita mungkin perlu membaca data ke dalam memori untuk pemprosesan selanjutnya. Pada ketika ini, menukar strim kepada tatasusunan akan meningkatkan prestasi dan kebolehbacaan program dengan ketara.
Bagaimana untuk menukar strim kepada tatasusunan?
Di Golang, kita boleh menggunakan fungsi gelung dan tambah untuk menukar strim kepada tatasusunan.
Pertama, kita perlu mencipta tatasusunan kosong untuk menyimpan data dalam strim. Kita boleh menggunakan fungsi make untuk mencipta kepingan sebagai tatasusunan kita.
slice := make([]type, 0)
Di mana jenis adalah jenis data yang kita ingin simpan, yang boleh menjadi mana-mana jenis asas Golang atau jenis tersuai.
Seterusnya, kita perlu menggunakan gelung for untuk lelaran melalui data dalam strim dan menggunakan fungsi tambah untuk meletakkan setiap item data ke dalam tatasusunan.
for data := range stream { slice = append(slice, data) }
Di sini, strim mewakili strim kami dan data mewakili item data yang ingin kami proses. Dalam setiap gelung, kami menambah item data pada kepingan menggunakan fungsi tambah.
Akhir sekali, kita boleh menggunakan tatasusunan ini untuk pemprosesan selanjutnya, seperti mengisih, menapis atau mengira purata, dsb.
Contoh kod penuh:
package main import ( "fmt" "io/ioutil" ) func main() { bytes, err := ioutil.ReadFile("test.txt") if err != nil { fmt.Println("Error reading file:", err) return } text := string(bytes) lines := strings.Split(text, " ") words := make([]string, 0) for _, line := range lines { for _, word := range strings.Split(line, " ") { words = append(words, word) } } fmt.Println(words) }
Kod ini membaca fail, membahagikannya kepada baris dan perkataan, dan kemudian menyimpan semua perkataan dalam tatasusunan rentetan.
Dalam contoh ini, tatasusunan "perkataan" sebenarnya ialah tatasusunan yang ingin kita hasilkan.
Ringkasan
Di Golang, kita boleh menggunakan fungsi gelung for dan tambah untuk menukar strim kepada tatasusunan, dan kemudian gunakan tatasusunan ini untuk pemprosesan selanjutnya. Kaedah ini sangat berguna apabila memproses sejumlah besar data dan boleh meningkatkan prestasi dan kebolehbacaan program dengan ketara.
Atas ialah kandungan terperinci susunan aliran golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!