1.8 方法
1.8.1方法的的定义
定义:完毕特定功能的代码块。在非常多语言里面有函数的定义,而在Java中函数被称为方法。
格式:
修饰符 返回值类型 方法名(參数类型 參数名1,參数类型 參数名2...){
方法体语句;
return 返回值;
}
解释:
修饰符:眼下就用 public static。后面我们再具体的解说其它的修饰符。
返回值类型:就是功能结果的数据类型。
方法名:符合命名规则就可以。方便我们的调用。
參数类型:就是形式參数的数据类型
形式參数;就是方法定义上的。用于接收实际參数的。
实际參数:就是实际參与运算的。
參数名:就是变量名
方法体语句:就是完毕功能的代码。
return:用于结束方法。
返回值:就是功能的结果,由return带给调用者。
想要写出一个方法,就必须先明白两点:返回值类型和參数列表
演示样例1:
class FunctionDemo{ public static void main(String [] args){ int x = 10; int y = 2; int result = sum(x,y); System.out.println(result); } public static int sum(int a,int b){ return (a+b); } }
执行结果:
演示样例2:在键盘中录入两个数据。并比較两个数据的值是否相等。
import java.util.Scanner; class FunctionTest2{ public static void main(String [] args){ Scanner sc = new Scanner(System.in); System.out.println("请输入第一个数:"); int a = sc.nextInt(); System.out.println("请输入第二个数:"); int b = sc.nextInt(); boolean result = compare(a,b); if(result==true){ System.out.println("您所输入的两个数据相等"); } else { System.out.println("您所输入的两个数据不相等"); } } public static boolean compare(int a,int b){ return (a == b); } }
执行结果:
演示样例3:键盘录入行数和列数。输出相应的星形
import java.util.Scanner; class FunctionTest4{ public static void main(String [] args){ //创建键盘录入对象 Scanner sc = new Scanner(System.in); System.out.print("请输入行数:"); int m = sc.nextInt(); System.out.print("请输入列数:"); int n = sc.nextInt(); //调用打印星星的方法 getXing(m,n); } public static void getXing(int m,int n){ for(int x = 1;x <= m;x++){ for(int y = 1;y <= n;y++){ System.out.print("*"); } System.out.println(); } } }执行结果:
演示样例4:键盘录入一个数据n(1<=n<=9),输出相应的nn乘法表
import java.util.Scanner; class FunctionTest5{ public static void main(String [] args){ //创建键盘录入对象 Scanner sc = new Scanner(System.in); System.out.println("请输入n的值(1-9):"); int n = sc.nextInt(); printNN(n); } public static void printNN(int n){ for(int x = 1;x <= n;x++){ for(int y = 1;y <= x;y++){ System.out.print(y+"x"+x+"="+x*y+' '); } System.out.println(); } } }执行结果:
1.8.2 方法的重载
定义: 在同一个类中。同意存在一个以上的同名函数。仅仅要它们的參数个数或者參数类型不同就可以。
注意:重载与与返回值类型无关。
演示样例:
class FunctionDemo{ public static void main(String[] args){ System.out.println(add(3,4)); System.out.println(add(3.0,4.0)); System.out.println(add(3,4,5)); } //加法运算,两个整数的和 public static int add(int a, int b){ return a + b; } //加法运算。两个小数的和 public static double add(double a, double b){ return a + b; } //加法运算。三个整数的和 public static int add(int a, int b,int c){ return add(a,b) + c; } }执行结果: