zoukankan      html  css  js  c++  java
  • 切片的增、删、改

    在自学golang,切片的原理就不多讲了。

    不知道的可以看下我以前写的  传送

    切片的增删改这里是运用append来操作的,如有其他好方式,欢迎留言。

    增:

    //因为要追加,所以要新建一个相同类型的slice,并指定一个长度
    app := make([]Product, 1)
    //因为我的被添加的切片类型是值类型,而添加的是指针,故需要获取下
    app[0] = *productInfo
    //开始在切片头部追加
    ProductNormalAll = append(app[0:len(app)],ProductNormalAll[0:len(ProductNormalAll)]...)

    改:

    //改就很简单了,直接range,找到后赋值即可        
    for k, v := range ProductNormalAll {
        if v.Id == productInfo.Id {
            logs.Debug("AddProduct:3")
            ProductNormalAll[k] = *productInfo
            break
        }
    }

    删:

    //删除也是range下,找到要删除的可以后执行append操作即可。当然,append时注意不要将要删除的key加进去了哦
    for k, v := range ProductNormalAll {
        if v.Id == id {
            ProductNormalAll = append(ProductNormalAll[:k],ProductNormalAll[k+1:len(ProductNormalAll)]...)
            break
        }
    }
  • 相关阅读:
    window.onresize绑定事件以及解绑事件
    jqGrid中select带可编辑的
    ROS(机器视觉)
    Python(time模块)
    Python(random模块)
    Python迭代器
    Python生成器
    Python装饰器(函数)
    ROS(URDF机器人建模)
    ROS基础
  • 原文地址:https://www.cnblogs.com/two-bees/p/12975177.html
Copyright © 2011-2022 走看看