Mencari Kedudukan Elemen dalam Slice
Menentukan kedudukan elemen dalam kepingan dalam Go boleh menjadi tugas yang berguna. Walau bagaimanapun, tidak seperti bahasa lain, tiada fungsi perpustakaan generik untuk melaksanakan operasi ini secara langsung.
Penyelesaian Tersuai
Satu pendekatan ialah mencipta fungsi tersuai khusus untuk jenis kepingan:
type intSlice []int func (slice intSlice) pos(value int) int { for p, v := range slice { if v == value { return p } } return -1 }
Fungsi ini berulang pada elemen dalam kepingan, membandingkan setiap elemen dengan nilai yang sedang dicari. Jika padanan ditemui, kedudukan elemen dikembalikan.
Pertimbangan
Semasa fungsi tersuai anda berfungsi, adalah penting untuk ambil perhatian bahawa ia hanya akan berfungsi pada int hirisan. Jika anda perlu mencari nilai tertentu dalam hirisan jenis yang berbeza, anda perlu mencipta fungsi baharu khusus untuk jenis itu.
Kepingan Byte
Untuk kepingan bait, terdapat fungsi terbina dalam dipanggil bait.IndexByte yang boleh digunakan untuk mencari kedudukan nilai bait dalam slice:
package bytes func IndexByte(s []byte, b byte) int
Kesimpulan
Menentukan kedudukan elemen dalam kepingan dalam Go memerlukan sama ada fungsi tersuai atau penggunaan bait.IndexByte untuk hirisan bait . Walaupun tiada fungsi perpustakaan generik untuk melaksanakan tugas ini untuk semua jenis kepingan, pendekatan tersuai menyediakan cara yang mudah untuk mencari elemen dalam jenis kepingan tertentu.
Atas ialah kandungan terperinci Bagaimana Saya Boleh Cari Indeks Elemen dalam Go Slice?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!