函数(方法)
** 函数的作用:**提高功能代码的复用性。
函数的定义格式:
修饰符 返回值类型 函数名(形参列表){
需要被封装的功能代码;
}
修饰符: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: 与函数的返回值类型是无关的。