当你定义一个getter时,你实际上是把 last 当作一个属性而不是一个函数。因此,它是通过array.last而不是array.last()访问的。如果您将数组的末了一个元素视为该数组的属性,而不是函数的效果,则这种观点在语义上会更清晰。Getter可以提供一种更精炼的、类似于属性的语法,以加强可读性,特殊是当您要实现的操作不需要任何参数而且在概念上是一个属性时。
此外,当在大量利用getter和setter的代码库中工作时,利用getter可以提高一致性。然而,在您的特定题目的上下文中注意到这一点很告急:由于getter被视为一个属性,以是需要一个嵌套的函数来通过在线判断。这个附加层提供了一种与属性交互的方法,使评测性可以或许实现预期的适当功能。
复杂度分析