目录
方法的概述
方法:在java中将一堆具有独立功能的代码进行打包得出的代码集称为方法
注意事项:
1.方法必须先创建在调用,该过程称为方法定义
2.方法创建后并不是直接运行的,而是经过手动使用后才执行 这个过程叫做方法调用
方法的定义和调用
定义:方法的定义有两种情况,一是不带参数的定义 二是带参数的定义 这里先写不带参数的方法的定义和调用
不带参数的方法的定义格式:
Public static void 方法名(){
方法体;
}
例:
public static void isEvenNumber(){
System.out.println("6666");//方法体
}
如上所示: isEvenNumber就是方法名 {}里面的就是这个方法的方法体
不带参数的方法的调用格式:
格式:方法名();
//下面是例子
number();//调用方法
public static void number(){
System.out.println("666")
}
带参数的方法
带参数的方法的定义格式:
public static void 方法名(参数1,参数2,参数3......){
方法体;
}
//参数的组成:数据类型 变量名
//如上所示就是带参数的方法的定义格式
//带参数的方法可以定义多个参数 ,参数与参数之间使用英文状态下的逗号隔开
public static void main_1(int a,int b,int c){
System.out.println("666")
}
//如第二段代码所示
//表示定义了一个方法名为main_1的方法 这个方法里面有三个int类型的参数
带参数的方法的调用格式:
格式:方法名(参数的变量名1,参数的变量名2);
//下面是例子
number(a,b)//调用方法
public static void number(int a, int b, int c){
System.out.println("666");
}
无论是不带参数的方法还是带参数的方法都要牢记,方法是先定义在调用!
定义的动作写在main方法外面
调用的动作要写在main方法里面
形参和实参的概念
形参:在方法定义时的参数叫做形参
public static void number(int a , int b){
System.out.println("666");
}
//如上所示 在这个方法里面的int a 和int b 就可以称为形参
//因为它们处于方法的定义中 还未被外部调用
实参:在方法调用时的参数叫做实参
public static void main(String[] args){
int a = 10;
int b = 20;
number(a,b);
}
public static void number(int a , int b){
if(a>b){
System.out.println("666");
}
else{
System.out.println("888");
}
}
//如上所示 在这个方法里面的int a 和int b 就可以称为形参
//因为它们处于方法的定义中 还未被外部调用
//而在main方法下的int a=10和int b =20。这两个参数就变成了实参
//可以这么理解 因为它们被外部赋值了具备真正的实体 所以就不再是形参 而是实参
方法案例小实操
需求:要求用户随机录入两个数,比较两个数的大小,并且输出那个较大的数
使用不带参数的方法实现:
import java.util.Scanner;
public static void main(Strint[] args){
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//调用创建的Scanner对象进行数据的录入
System.out.println("请输入第一个数");
int i1= sc.nextInt();//存储第一个数据
System.out.println("请输入第二个数");
int i2 = sc.nextInt();//存储第二个数据
//调用方法
number();
}
//创建方法
public static void number(){
if(i1>i2){
System.out.println(i1);
}
else if (i1<i2){
System.out.println(i2);
}
else{
System.out.println("您输入的数据有误");
}
}
//实现原理 在main方法里面先录入数据并保存数据 然后调用number方法对录入的数据进行比较
使用带参数的方法实现:
import java.util.Scanner;
public static void main(String[] args){
Scanner sc = new Scanner(String [] args);
System.out.println("请输入第一个数");
int a = sc.nextInt();
System.out.println("请输入第二个数");
int b = sc.nextInt();
int i1=a;
int i2=b;//对方法中的参数进行赋值 使其成为为形参
//调用方法
number(a,b);
}
//定义方法
public static void number(int i1, int i2){
if(i1>i2){
System.out.println(i1);
}
else if (i1<i2){
System.out.println(i2);
}
else{
System.out.println("您输入的数据有误");
}
方法的执行过程:
依照谁在前先执行谁的原则
1.先执行主方法main下的方法体
2.主方法main执行完毕之后,再依次往下执行
3.如果是带参数的方法,那么依照先执行主方法main的原则,可以将带参数的方法的参数再main方法里面进行赋值 然后在调用该方法的时候,该参数就是main方法下被修改的值了
4.只要是带参数的方法,它的参数在前面的方法里面被赋值或者修改了,那么轮到它执行的时候,参数就不再是原来的参数了,而是被上面修改过后的值