我有一个Pair<Object1, Object2>
类型的对象,现在我试图返回一个对象,在这个对象中,它的值的比较值更低。
我在Kotlin中看到了下面的函数
/**
* Returns the smaller of two values.
*
* If values are equal, returns the first one.
*/
@SinceKotlin("1.1")
public actual fun <T : Comparable<T>> minOf(a: T, b: T): T {
return if (a <= b) a else b
}
这个方法应该对我有用,因为我需要查看两个对象中哪个对象的值最小并返回该对象
所以我希望返回的对象为
minOf(pair.first.price, pair.second.price).storeName
但这个会在双精度比较器中产生
如何为这两个对象添加比较器并返回具有min值的对象?
2条答案
按热度按时间qaxu7uf21#
你的问题缺少一些关于你的数据结构的细节,以及它意味着什么对象更低。然而,如果我正确理解你的例子,这就是你可以做到这一点的方法:
或者,我们可以通过转换为列表来更简洁地完成,尽管我认为这可能会产生误导,并且不值得对性能造成影响:
hgqdbh6s2#