我有两个功能:
def capPredDouble(rawPred: Double): Double = {
if (label == "1") {
Math.min(1.0, rawPred)
} else {
Math.max(0, rawPred)
}
}
def capPred(rawPred: Float): Float = {
if (label == "1") {
Math.min(1.0f, rawPred)
} else {
Math.max(0, rawPred)
}
}
是否可以使用多态性使它们成为一个函数?
最佳答案
这似乎有效。
def capPred[N](rawPred :N)(implicit ev :Numeric[N]) :N =
if (<some condition>) ev.min(ev.one, rawPred)
else ev.max(ev.zero, rawPred)
关于scala - 如何编写一个 scala 函数来接受两种类型的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53526278/