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

问题描述 投票:0回答:1

我有这个对象数组:

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

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

{Prop: "something_else", value: 5}

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

go
1个回答
0
投票

你可以这样做:

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)
}

没有魔法方法/库

© www.soinside.com 2019 - 2024. All rights reserved.