Golang -在对象数组中查找属性的最大值并返回对象

2ul0zpep  于 2023-04-03  发布在  Go
关注(0)|答案(1)|浏览(208)

我有这个对象数组:

[
 {Prop: "something", value: 2},
 {Prop: "something_else", value: 5},
 {Prop: "bla", value: 3}
]

我想找到属性“value”上的最大值,然后我想返回整个对象

{Prop: "something_else", value: 5}

在golang中最简单的方法是什么?

0x6upsns

0x6upsns1#

你可以这样做:

package main

import (
    "fmt"
)

type Something struct {
    Prop  string
    value int
}

func main() {
    somethings := []Something{
        {Prop: "something", value: 2},
        {Prop: "something_else", value: 5},
        {Prop: "bla", value: 3},
    }

    maxObj := somethings[0]

    for _, something := range somethings {
        if something.value > maxObj.value {
            maxObj = something
        }
    }

    fmt.Println(maxObj)
}

没有神奇的方法/库

相关问题