我正在阅读有关Scala的一些资料,在那里我遇到了这个方法签名:
def calculateStateTax(f: Double => Double, personsIncome: Double): Double = ...
我想知道,如果我们有计算不同州税收的函数,我们如何确保传入的函数用于计算州税?也就是说,它不是Double上的其他操作。感谢!!!
答案 0 :(得分:0)
更多的是在建模方面,你可以将Double包装到案例类Tax(money:Double)然后在你将拥有的方法签名上:
def calculateStateTax(f: Tax => Double, personsIncome: Double): Double = ...
然后你只需要相信你使用的f
方法的作者正确地执行它,或者你总是可以检查方法调用。