函数(方法)

** 函数的作用:**提高功能代码的复用性。
函数的定义格式:

修饰符  返回值类型 函数名(形参列表){
	需要被封装的功能代码;
	}

修饰符:public static
返回值类型: 函数运行完毕后返回的结果的数据类型。
函数名:调用函数时用到函数名。符合标识符的命名规则
return: 把结果返回给调用者
形式参数:如果一个函数运行时,存在的数据是需要调用者确定的,那么就应该定义形式参数。

函数的特点:
1:函数定义好之后,是需要被调用才会执行的。
2:函数的作用就是把一个功能代码封装起来,以便达到提高功能代码的复用性。
3:如果一个函数没有返回值返回给调用者,那么返回值类型必须是使用void表示。

需求1:比较两个int类型数据的大小,返回最大值。

package exercise;
import java.util.Scanner;
public class 随便试一试 {
	public static void main(String[] args) {
		
				int s=add();
				System.out.print(s);
			}
			public static int add(){
				Scanner sc =new Scanner(System.in);
				System.out.println("请输入a,b的值:");
				int a = sc.nextInt();
				int b=sc.nextInt();
				if(a>b) {
					return a;
				}
				return b;
				}
				}

需求2:定义一个函数,判断一个分数的等级,把分数的等级返回给调用者。

package exercise;
import java.util.Scanner;
public class 随便试一试 {
	public static void main(String[] args) {
		String aaa=grade();
		System.out.print(aaa);
		
	}
	public static String grade() {
		Scanner sc=new Scanner(System.in);
		System.out.println("请输入分数:");
		int a=sc.nextInt();
		String g ="";
		if(a<60) {
			g="不合格";
		}
		else if(a>=60 && a<=80) {
			g="良好";
		}
		else {
			g="优秀";
		}
		return g;
	}
}

需求3:用函数输出九九乘法表

package exercise;
import java.util.Scanner;
public class 随便试一试 {
	public static void main(String[] args) {
		print();
		
	}
	public static void print() {
		for(int i=1;i<=9;i++) {
			for(int j=1;j<i;j++) {
				System.out.print(j+"*"+i+"="+i*j+"\t");
			}
			System.out.println();
		}
	}
}

/*运行结果
1*2=2	
1*3=3	2*3=6	
1*4=4	2*4=8	3*4=12	
1*5=5	2*5=10	3*5=15	4*5=20	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72
 */

注意:
如果一个函数的返回值类型是具体的数据类型,那么该函数就必须要保证在任意情况下都有返回值

return 关键字的作用:
1:返回数据给函数的调用者。
2:函数一旦执行到了return关键字,那么该函数马上结束。

break关键字与return关键字的区别:
1:break关键字是结束一个循环。
2:return关键字是结束一个函数。

** 函数的重载:**
在一个类中出现了两个或者两个以上的同名函数,这个称作为函数的重载。

函数重载的作用:
同一个函数名可以出现了不同的函数,以便于应对不同数据类型的参数。

函数重载的要求:
1:函数名一致;
2:形参列表不一致;(形式参数的个数或者是对应的数据类型不一致)
3: 与函数的返回值类型是无关的。