报告没有 @tailrec
注解的尾递归方法,该注解验证方法将使用尾调用优化进行编译。
请注意,方法必须是有效的 final
,此检查才会被显示。
示例:
def factorial(n: Long, acc: Long = 1): Long =
if (n <= 1) acc else factorial(n - 1, acc * n)
在应用快速修复后:
@tailrec
def factorial(n: Long, acc: Long = 1): Long =
if (n <= 1) acc else factorial(n - 1, acc * n)