方法的定义
[修饰符] 类型 方法名 ( [参数列表] )
{
// 方法体
}
修饰符可以为public .static.private等
return语句
return语句的功能是从当前方法中退出,返回到调用该方法的语句处。格式:
return[表达式];或return([表达式]);
package Chap5;
public class Work1{
public static void main(String[] args) {
// TODO Auto-generated method stub
int x=20,y=30,z;
//调用方法
z=max(x,y);//实参向形参传递值,单向传递
System.out.println(z);
}
/**方法的头部有三个要素:
* 方法名:首字母小写
* 参数列表:有几个原始数据,就有几个参数
* 返回值类型:结果的类型
*/
static int max(int x,int y) {
//方法中只需要定义结果变量和中间临时变量
int z;
if(x>y) {
z=x;
}else {
z=y;
}
return z;
}
}
方法的调用
调用方法时,要用实际参数替换方法定义中的参数表中的形式参数。
注意:实际参数的个数、类型、顺序都必须与形式参数一致。
import java.until.Scanner;
public class Demo{
public static void main (String[]args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入第一个整数");
int num1=sc.nextInt();
System.out.println("请输入第二个整数");
int num2=sc.nextInt();
boolean is=compare (num1,num2);
System.out.println(is);
}
public static boolean compare(int a,intb){
return a==b;
}
方法的重载
定义:在同一个类中的多个方法,它们的方法名相同,参数列表不同的情况。
1.参数列表不同
(1)参数的个数不同
(2)对应位置的参数类型不同
2.方法重载与返回值类型无关。
package Chap5_FangFa;
public class Overload {
/**
* 方法的重载
* 在java中允许一个类中存在多个同名的方法
* 要求多个同名的方法的参数个数或者类型必须不同
* 返回值的类型不能作为区分重载方法的依据
*
*/
static int max(int x,int y) {
int z;
z=x>y?x:y;
return z;
}
static float max(float x,float y) {
float z;
z=x>y?x:y;
return z;
}
static double max(double x,double y) {
double z;
z=x>y?x:y;
return z;
}
public static void main(String []args) {
int m=max(10,20);
float n=max(10,20);
double h=max(10,20);
System.out.println(m);
System.out.println(n);
System.out.println(h);
}
}