欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

go語言如何在切片中刪除元素

這篇文章主要介紹“go語言如何在切片中刪除元素”的相關(guān)知識(shí),小編通過實(shí)際案例向大家展示操作過程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“go語言如何在切片中刪除元素”文章能幫助大家解決問題。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供上城企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、html5、小程序制作等業(yè)務(wù)。10年已為上城眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。

Go語言從切片中刪除元素

Go語言并沒有對(duì)刪除切片元素提供專用的語法或者接口,需要使用切片本身的特性來刪除元素,根據(jù)要?jiǎng)h除元素的位置有三種情況,分別是從開頭位置刪除、從中間位置刪除和從尾部刪除,其中刪除切片尾部的元素速度最快。

從開頭位置刪除

刪除開頭的元素可以直接移動(dòng)數(shù)據(jù)指針:

a = []int{1, 2, 3}
a = a[1:] // 刪除開頭1個(gè)元素
a = a[N:] // 刪除開頭N個(gè)元素

也可以不移動(dòng)數(shù)據(jù)指針,但是將后面的數(shù)據(jù)向開頭移動(dòng),可以用 append 原地完成(所謂原地完成是指在原有的切片數(shù)據(jù)對(duì)應(yīng)的內(nèi)存區(qū)間內(nèi)完成,不會(huì)導(dǎo)致內(nèi)存空間結(jié)構(gòu)的變化):

a = []int{1, 2, 3}
a = append(a[:0], a[1:]...) // 刪除開頭1個(gè)元素
a = append(a[:0], a[N:]...) // 刪除開頭N個(gè)元素

還可以用 copy() 函數(shù)來刪除開頭的元素:

a = []int{1, 2, 3}
a = a[:copy(a, a[1:])] // 刪除開頭1個(gè)元素
a = a[:copy(a, a[N:])] // 刪除開頭N個(gè)元素

從中間位置刪除

對(duì)于刪除中間的元素,需要對(duì)剩余的元素進(jìn)行一次整體挪動(dòng),同樣可以用 append 或 copy 原地完成:

a = []int{1, 2, 3, ...}
a = append(a[:i], a[i+1:]...) // 刪除中間1個(gè)元素
a = append(a[:i], a[i+N:]...) // 刪除中間N個(gè)元素
a = a[:i+copy(a[i:], a[i+1:])] // 刪除中間1個(gè)元素
a = a[:i+copy(a[i:], a[i+N:])] // 刪除中間N個(gè)元素

從尾部刪除

a = []int{1, 2, 3}
a = a[:len(a)-1] // 刪除尾部1個(gè)元素
a = a[:len(a)-N] // 刪除尾部N個(gè)元素

刪除開頭的元素和刪除尾部的元素都可以認(rèn)為是刪除中間元素操作的特殊情況,下面來看一個(gè)示例。

【示例】刪除切片指定位置的元素。

package main
import "fmt"
func main() {
    seq := []string{"a", "b", "c", "d", "e"}
    // 指定刪除位置
    index := 2
    // 查看刪除位置之前的元素和之后的元素
    fmt.Println(seq[:index], seq[index+1:])
    // 將刪除點(diǎn)前后的元素連接起來
    seq = append(seq[:index], seq[index+1:]...)
    fmt.Println(seq)
}

代碼輸出結(jié)果:

[a b] [d e]
[a b d e]

代碼說明如下:

  • 第 1 行,聲明一個(gè)整型切片,保存含有從 a 到 e 的字符串。

  • 第 4 行,為了演示和講解方便,使用 index 變量保存需要?jiǎng)h除的元素位置。

  • 第 7 行,seq[:index] 表示的就是被刪除元素的前半部分,值為 [1 2],seq[index+1:] 表示的是被刪除元素的后半部分,值為 [4 5]。

  • 第 10 行,使用 append() 函數(shù)將兩個(gè)切片連接起來。

  • 第 12 行,輸出連接好的新切片,此時(shí),索引為 2 的元素已經(jīng)被刪除。

Go語言中刪除切片元素的本質(zhì)是,以被刪除元素為分界點(diǎn),將前后兩個(gè)部分的內(nèi)存重新連接起來。

關(guān)于“go語言如何在切片中刪除元素”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。

網(wǎng)頁名稱:go語言如何在切片中刪除元素
轉(zhuǎn)載注明:http://aaarwkj.com/article14/gjddge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、全網(wǎng)營銷推廣、服務(wù)器托管、軟件開發(fā)定制開發(fā)、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
高清欧美精品一区二区三区| 人人妻人人澡人人妻| 日韩三级av在线免费观看| 亚洲欧美国产精品日韩| 欧美v日韩v亚洲综合国产高清| 在线播放av男人的天堂| 美女视频黄的日本的日进去了| 91亚色在线免费观看| 91中文字幕国产日韩| 日韩精品免费一区二区三区| 91精品欧美综合在线| 99热只有这里才有精品| 91伊人日本在线视频| 色哟哟哟哟免费观看视频| 国产女技师口爆在线观看| 久久亚洲av麻衣北条麻妃 | 亚洲三级成人一区在线| 亚洲午夜av久久乱码| 亚洲国产成人精品久久精品| 国产黄片免费高清观看| 日日干夜夜射天天操| 日韩夫妻精品熟妇人妻一区| 热门精品一区二区三区| 白白色手机视频免费看| 日韩成人在线视频观看| 久久精品国产亚洲av品| 色人阁在线精品免费视频| 青青青在线视频观看华人| 亚洲精品一级二级三级| 国产成人综合久久三区北岛玲| 少妇欧美日韩精品在线观看 | 欧美一区二区三区日韩色| 国产一区二区三区91精品| av网址在线免费观看| 午夜亚洲大片在线观看| 成人在线观看av毛片| 国内成人午夜激情视频| 人妻人人澡人人添人人爽桃色 | 激情亚洲不卡一区二区| 日本人的黄色录像视频| 日韩中文字幕专区在线|