百知教育学习- 胡鑫喆讲师-第四章——函数
01函数的定义
01.减小冗余代码的原因:
冗余代码会影响到程序的可维护性。
- 概念:实现特定功能的一段代码。可反复使用。
定义语法:
public static void 函数名称(){
//函数主体
}
本节代码:
public class TextFunction{
public static void main(String[] args){
printSign();
System.out.println("大将生来胆气豪");
printSign();
System.out.println("腰横秋水雁翎刀");
printSign();
System.out.println("风吹打鼓天地动");
printSign();
System.out.println("电闪旌旗日月高");
printSign();
}
public static void printSign(){
for(int i=1;i<=30;i++){
System.out.print('-');
}
}
}
02函数的参数
01.定义:传递的数据。
02.形参与实参
public class TextFunction{
public static void main(String[] args){
printSign(40);
System.out.println("大将生来胆气豪");
printSign(40);
System.out.println("腰横秋水雁翎刀");
printSign(40);
System.out.println("风吹打鼓天地动");
printSign(40);
System.out.println("电闪旌旗日月高");
printSign(40);
}
public static void printSign(int len){
for(int i=1;i<=len;i++){
System.out.print('-');
}
}
}
03 函数的返回值和函数的作用
- 函数调用时,一些情况下无需返回结果;另一些情况下则必须返回结果。
- 注意:一个类中可以定义多个函数,函数之间属于并列关系,不可嵌套。
- 经验:一个函数只做一件事。
- 好处:
减少代码冗余。
提高复用性
提高可读性
提高可维护性
方便分工合作
04函数的递归
代码:
public class TestRecursionInvoke{
public static void main(String[] args){
m1();
}
public static void m1(){
System.out.println("m1() -start");
m1();
Systmm.out.println("m1() -end");
}
}
eg:
- 递归阶乘
package day4;
public class TestFact{
public static void main(String[] args){
System.out.println(fabo(6));
}//计算n的阶乘
public static int fact(int n){
if(n==1) return 1;
int result=n*fact(n-1);
return result;
}
}