繁体   English   中英

按数组的值切片

[英]Slice by value of array

如何按 id 对数组进行切片

{
  "id": 1
  "status": "available" 
  "snapshot_id" : 1
  ...
},
{
   "id": 2
   "status" "non available"
   "snapshot_id" : 0
   ...
}

我没有从数据库或其他东西中获取它。 需要像这样按值切片但不是来自数据库

o.QueryTable("Ticket").Filter("Status", "Pending").All(&newticket)

根据idstatussnapshot_id等值参数从现有数组创建子数组

我已经重现了您的场景并根据值参数对数组进行了切片

package main

import (
    "fmt"
)

type Ticket struct {
    id          int
    status      string
    snapshot_id int
}

func main() {

    var newTicket []Ticket

    TicketArr := []Ticket{{1, "available", 1}, {2, "n.a", 2}, {3, "available", 30}}

    for _, v := range TicketArr {

        if v.status == "available" {

            newTicket = append(newTicket, v)
        }
    }

    fmt.Println("newTicket", newTicket)

}

输出:

newTicket [{1 available 1} {3 available 30}]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM