2021 -11-16 Java学习

学习视频:https://www.bilibili.com/video/BV18J411W7cE?p=83

带参数方法的定义和调用

定义:

格式: 

public static void 方法名 (参数){... ...}

eg:

//单个参数
public static void 方法名 (数据类型 变量名) {... ...}

public static void isEventNumber (int number) {... ...}

//多个参数
public static void 方法名 (数据类型1 变量名1,数据类型2 变量名2) {... ...}

public static void isEventNumber (int number1,int number2) {... ...}

调用:

格式:

方法名 (参数);

eg:

//单个参数
//方法名(变量名/常量值);
isEventNumber(5);

//多个参数
//方法名(变量名1/常量值1,变量名2/常量值2);
max(5,6);

传入参数数量和类型不匹配会报错。

形参和实参

形参:方法定义中的参数    eg: int number

实参:方法调用中的参数     eg:     number    10

带参数方法练习:

打印一个数组中最大值:

package javacode;

public class max {
    public static void main(String[] args) {
        int[] arr = {165,178,165,173,180,167,175};
        max(arr);
    }
    public static void max (int[] arr) {
        int max = arr[0];
        for(int i = 0; i < arr.length ; i++){
            if(max < arr[i])
                max = arr[i];
        }
        System.out.println(max);
    }
}

带返回值方法的定义和使用:

定义:

格式:

//格式
public static 数据类型  方法名(参数){
    return 数据;
}

// eg:
public static int getMax (int a,int b){
    int max = a>b ? a : b ;
    return max;
}
 

返回值需要由变量接收

返回两个整数中较大者:

package javacode;
//获得两数中较大者
public class getMax {
    public static void main(String[] args) {
        int a = getMax1(5,6);
        System.out.println(a);
    }

    public static int getMax1 (int a,int b) {
        int max ;
        max = a>b ? a : b ;
        //System.out.println(max);
        return max;
    }
}

方法的注意事项:

1、方法不能嵌套定义

2、void表示空,看省略return ,可写return后不接数据

方法格式:

public static 数据类型 方法名 (参数) {
    方法体;
    return 数据;
}

方法重载:

指同一个类中定义的多个方法之间的关系,满足以下条件的多个方法互相构成重载

1、多个方法在一个类中

2、多个方法具有相同的方法名

3、多个方法参数不同,类型不同或数量不同

特点:

1、重载仅对应方法定义,与方法调用无关,调用方式按标准格式

2、重载争对同一类中方法的名称与参数进行识别,与返回值无关,无法通过返回值判定量个方法是否重载。

package javacode;

public class chongzai {
    public static void main(String[] args) {
        int a = sum (5,6);
        System.out.println(a);
    }

    public static int sum (int a , int b) {
        return a + b ;
    }
    public static double sum (double a , double b) {
        return a + b ;
    }
    public static int sum (int a , int b,int c) {
        return a + b + c ;
    }
}

调用时Java虚拟机根据参数不同区分同名方法

方法的参数传递:

对于基本数据类型的参数,形式参数的改变,不影响实际参数的值。

change方法中的number变为200,不影响main中number的值。

 对于引用类型的参数,形式参数的改变,会影响实际值。

猜你喜欢

转载自blog.csdn.net/qq_54525532/article/details/121363137