Apa cara Go untuk mengekstraksi elemen terakhir dari slice?
var slice []int
slice = append(slice, 2)
slice = append(slice, 7)
slice[len(slice)-1:][0] // Retrieves the last element
Solusi di atas berfungsi, tetapi tampaknya aneh.
Untuk hanya membaca elemen terakhir dari sepotong:
sl[len(sl)-1]
Untuk menghapusnya:
sl = sl[:len(sl)-1]
Lihat halaman ini tentang trik irisan
-1
indeks yang Python miliki ...-1
dari Python, meskipun sering menyebabkan kesalahan debug sulit.panic: runtime error: index out of range
untukprofiles[len(profiles)-1].UserId
, saya kira panjang slice adalah 0 sehingga panik?Agak kurang elegan tetapi juga bisa:
sumber
sl[len(sl)-1:]
, tapi itu mengembalikan sepotong yang mengandung elemen terakhir, bukan hanya elemen terakhir. play.golang.org/p/kcThrqa-64c