大数据全系列 教程
1869个小节阅读:464.7k
目录
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
package com.itbaizhan.chapter03
//递归函数
object FunctionRecursion {
def main(args: Array[String]): Unit = {
//TODO 1.递归函数
/** 递归函数:在函数内部调用函数本身
* 注意:
* 1.scala中要求递归函数必须明确声明返回值类型
* 2.递归函数一定要有跳出的出口
* 3.传递的参数之间存在某种关系时才可以设计成递归函数
* @param num
* @return
*/
def funcA(num :Int): Int ={
if(num ==1) //跳出的出口
num
else
num * funcA(num-1)
}
print(funcA(5))
}
}
注意:递归函数不太常用,递归函数由于在不断的进行压栈,容易出现问题。
实时效果反馈
1. 关于Scala递归函数的描述,错误的是:
A 递归函数定义:在函数内部调用函数本身。
B scala中不要求递归函数必须明确声明返回值类型。
C 递归函数一定要有跳出的出口。
D 传递的参数之间存在某种关系时才可以设计成递归函数。
答案:
1=>B 要求递归函数必须明确声明返回值类型。