1,函数的概述
当重复需要某一个功能的时候,代码的重复性就比较高,函数就是解决重复型代码问题
函数就是具备特定功能的一段独立代码段,使用时调用。
2,函数的参数和返回值
public static void main(String [] args){
Scanner sc=new Scanner(System.in);
System.out.print("请输入第一个数:");
int num1=sc.nextInt();
System.out.print("请输入第二个数:");
int num2=sc.nextInt();
int j=add(num1,num2); //实际参数 传递数据
System.out.print("相加的结果是"+j);
}
public static int add(int a,int b){ //形式参数 与实际参数在个数,类型,顺序上完全一致
int sum;
sum=a+b;
return sum; //返回一个值到函数调用的地方
}
3,函数的入栈和出栈
当函数被调用时,函数入栈,一旦函数调用完毕,立刻出栈,函数在栈里面遵循先进后出规则。
4,自定义函数
在什么情况下会自定义一个参数?
1:明确函数在执行的过程中是否用到了不确定的数据、明确有没有参数
用到了不确定的数据:有参数
没有用到不确定的数据:没有参数
2:明确函数没有结果、明确有没有返回值
有结果:有返回值
没有结果:没有返回值
举个例子:判断两个整数是否相等
参数:两个整数
结果:是否相等 Boolean类型的值 有返回值
求两个整数中的最大值
参数:两个整数
结果:最大值 int 有返回值
打印一个矩形
参数:矩形的长度和宽度是不确定的
结果:无结果 无返回值
5,函数的重载
注:return的使用class Text03{
public static void main(String [] args){
find(11);
System.out.print("hahah");
}
public static void find(int a){
if(a>10){
return; //这里的return直接返回了函数调用的位置,提前结束了函数的运行
}else{
System.out.println("hello");
}
}
}
//还有一点就是,如果一个函数有返回值,那么必须在任何情况下都返回值
public static int show(){
if(a>b){
return 1;
}else if(a<b){
return 2;
}
}//这里的return,就没有考虑到a=b的情况会出现
缺少返回值的错误