golang如何删除数组中的元素

Lepaskan: 2019-12-25 10:10:30
asal
28685 orang telah melayarinya

golang如何删除数组中的元素

Slice删除元素的本质

Go语言并没有提供用于删除元素的语法或接口,而是通过利用切片本身的特性来删除元素——追加元素。即 以被删除元素为分界点,将前后两个部分的内存重新连接起来。

使用切片的追加(append)特性,利用代码实现。

Slice删除元素的实现:

由于切片没有语法糖实现删除,因此利用其追加元素的特性完成元素的删除操作;通过内建函数 append() 实现对单个元素以及元素片段的删除。

具体的思路就是

1.jpg

具体的代码实现如下所示:

// 从切片中删除元素 func SliceDelete() { // 初始化一个新的切片 seq seq := []string{"a", "b", "c", "d", "e", "f", "g"} // 指定删除位置 index := 3 // 输出删除位置之前和之后的元素 fmt.Println(seq[:index], seq[index+1:]) // seq[index+1:]... 表示将后段的整个添加到前段中 // 将删除前后的元素连接起来 seq = append(seq[:index], seq[index+1:]...) // 输出链接后的切片 fmt.Println(seq) } OutPut Result: [a b c] [e f g] [a b c e f g]
Salin selepas log masuk

Slice删除元素的操作过程

a b c d e f g ------------------------------------- | | ↓ seq[:index] ↓ seq[index+1:] a b c e f g ------------- ------------- | | | | ↓ ↓ a b c e f g ---------------------------------- append(seq[:index], seq[index+1:]...)
Salin selepas log masuk

更多golang知识请关注golang教程栏目。

Atas ialah kandungan terperinci golang如何删除数组中的元素. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!