技术圈开发者交流群:

Go语言切片删除指定元素

Go语言中并没有提供内置函数来删除切片,熟悉Java/PHP的都知道,在Java/PHP中都提供对list或数组的filter操作,那么在Go语言中就需要多用几行代码来实现删除切片中的指定元素了。

假设有个1~9的数组,要删除掉其中的偶数,那么这里先进行for循环,依次判断元素是否为偶数,然后将偶数的元素通过索引截取掉,下标i向左移动一位。

    numbers := []int{1, 2, 3, 4, 5, 6, 7, 8, 9}
    for i := 0; i < len(numbers); i++ {
        if numbers[i]%2 == 0 { // 如果是偶数就删除
            // 通过截取删除
            numbers = append(numbers[:i], numbers[i+1:]...)
            i--
        }
    }
    fmt.Println(numbers) // [1 3 5 7 9]

同样是1~9的数组,通过遍历,将不需要删除的元素依次在原来的数组上覆盖原有元素。最后只截取前面j个有效元素即可。

GoLang 2022年09月05日 1144

Go语言中的切片

切片,是一组可变长度的、同类元素的集合

与数组相比切片的长度是不固定的。切片可以追加元素,在追加元素时可能使切片的容量增大。

切片在使用前必须初始化,未初始化的切片的值为nil

var slice []int

fmt.Println(slice == nil)  // nil
GoLang 2022年08月29日 471

Go语言中的数组

数组,是一组固定长度的、同类元素的集合。

固定长度,声明时指定长度,长度不可以改变。

同类元素,数组中的元素必须是同一类型的

数组的声明,比如:声明一个长度为3的、元素类型为string的数组:

GoLang 2022年08月15日 705

排行

解决方案

网站建设

专业企业官网建设,塑造企业形象,传递企业价值

系统开发

系统软件开发,用心思考,用心设计,用心体验

技术支撑

打破技术瓶颈,让不堪重负的项目起死回生

业务中台

构建全渠道一体化运营能力,实现全链路数字化

文案策划

文案撰写、营销策划,专注品牌全案

新媒体运营

一站式解决企业互联网营销痛点和难题

以技术的力量,改变互联网

联系我们
鄂ICP备19028750号-1 @copyright 2024 tech1024.com