认识方法,参数传递,方法重载

目录

1.方法

8.参数传输

11.方法重载:

12.return关键字在方法中单独使用


1.方法

1.定义一种数据结构,一段代码封装成一个功能 ,以便重复使用

2.修饰符  返回值类型   方法名 (形参列表){

方法体代码(需要执行的功能代码)

return 返回值;

}

3.eg:  main{        int  rs =  sum(10,20);

                           rs.sout     }

public static int sum (inta,intb){

int c =a+b;

return c;

int rs =sum(10,20)   ————————直接输出调用syso(sum(10,20))

sout("和是:”+rs);                                 或者sum(10,20)

4.注意:方法定义后,需调用才能跑起;

方法声明了具体返回值类型,内部须使用return返回对应类型的数据

形参有多个,甚至没有,若有多个,中间逗号隔开,且不能给初始化值

5.有参无返回值的方法,

sum(数字);

publioc static void sum (int n)

                                          n.fori

注:如果方法不需要返回数据,返回值类型必须声明成void,不可用return

6.实参:在方法内部定义的变量 (int a = 10)

7.传输实参给方法的形参的时候,传输的是实参变量中存储的值的副本。

8.参数传输

JAVA参数传输机制都是值传递

   基本类型的参数传输存储的数据值

  引用类型的参数传输存储的地址值

9.引用类型的参数传递案例:

 // 目标:完成打印int类型的数组内容。
        int[] arr = {10, 30, 50, 70};
        printArray(arr);

        int[] arr2 = null;
        printArray(arr2);

        int[] arr3 = {};
        printArray(arr3);
    }

    public static void printArray(int[] arr){

        if(arr == null){
            System.out.println(arr); // null
            return; // 跳出当前方法
        }

        System.out.print("[");
        // 直接遍历接到的数组元素
        for (int i = 0; i < arr.length; i++) {
//            if(i == arr.length - 1){
//                System.out.print(arr[i]);
//            }else {
//                System.out.print(arr[i] + ", ");
//            }
            System.out.print(i == arr.length - 1 ? arr[i] : arr[i] + ", ");
        }
        System.out.println("]");
 // 目标:完成判断两个int类型的数组是否一样。
        int[] arr1 = {10, 20, 30};
        int[] arr2 = {10, 20, 30};
        System.out.println(equals(arr1, arr2));
    }

    public static boolean equals(int[] arr1, int[] arr2){
        // 1、判断arr1和arr2是否都是null.
        if(arr1 == null && arr2 == null){
            return true; // 相等的
        }

        // 2、判断arr1是null,或者arr2是null.
        if(arr1 == null || arr2 == null) {
            return false; // 不相等
        }

        // 3、判断2个数组的长度是否一样,如果长度不一样,直接返回false.
        if(arr1.length != arr2.length){
            return false; // 不相等
        }

        // 4、两个数组的长度是一样的,接着比较它们的内容是否一样。
        // arr1 = [10, 20, 30]
        // arr2 = [10, 20, 30]
        for (int i = 0; i < arr1.length; i++) {
            // 判断当前位置2个数组的元素是否不一样,不一样直接返回false
            if(arr1[i] != arr2[i]){
                return false; // 不相等的
            }
        }
        return true; // 两个数组是一样的。

10.方法自己调用自己——递归

11.方法重载:

一个类出现多个方法的名称相同,但它们的形参列表不同的

(形参的个数,类型,顺序不同,不关心形参的名称)

// 目标:掌握方法重载的应用场景。
        fire();            //发射l1枚武器给岛国
        fire("岛国2");     //发射l1枚武器给岛国2
        fire("米国", 999);  //发射999枚武器给米国
    }

    public static void fire(){
        fire("岛国");
    }

    public static void fire(String country){
        fire(country, 1);
    }

    public static void fire(String country, int number){
        System.out.println("发射了" + number + "枚武器给" + country);

12.return关键字在方法中单独使用

 return; 可以用在无返回值的方法中,作用是:立即跳出并结束当前方法的执行。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值