Day 5 参数的传递案例

参数传递案例,1.打印in类型的数组内容

代码:

public class MethodDemo {
    public static void main(String[] args) {
        //目标:完成打印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-1; 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[] arr = {10,30,50,70};

if(){ }else{ } 语句,可以用 三元运算符,条件? true : false;来代替

案例2:比较两个int类型的数组是否一样:

//代码风格,问语句层层拦截非法情况

返回值类型 由 public static void 改成public static boolean

public class MethodTest {
    public static void main(String[] args) {
        //目标:完成判断两个int类型的数组是否一样。
        int[] arr1={10,21,30};
        int[] arr2={10,20,30};
        System.out.println(equals(arr1,arr2));
    }
​
    /*层层拦截,优雅代码*/
    public static boolean equals(int[] arr1, int[] arr2) {
        if (arr1 == null && arr2 == null) {
            return true;//相等
        }
        if (arr1 == null || arr2 == null) {
            return false;//不相等
        }
        if (arr1.length != arr2.length) {
            return false;//不相等
        }
        //4.两个数组的长度是一样的,接着比较他们的内容是否一样。
        //arr1 = [10,20,30]
        //arr1 = [10,20,30]
        for (int i = 0; i < arr1.length; i++) {
            if (arr1[i] != arr2[i]) {
                return false;
            }
        }
        return true;
​
    }
​
}

方法重载

·定义:一个类中,出现多个方法的名称相同,但是它们的形参列表是不同的,那么这些方法就称为方法重载了。

**形参列表不同指的是:形参的个数、类型、顺序不同**

方法重载应用场景

public class MethodTest2 {
    public static void main(String[] args) {
//        目标:掌握方法重载的应用场景
        fire();
        fire("米国",999);
    }
​
    public static void fire(){
        System.out.println("默认给岛国发射了一枚武器~~");
    }
    public static void fire(String country){
        System.out.println("发射了一枚武器给" + country );
    }
    public static void fire(String country, int number){
        System.out.println("发射了" + number +"枚武器给"+country);
    }
​
}

改进

public class MethodTest2 {
    public static void main(String[] args) {
//        目标:掌握方法重载的应用场景
        fire();
        fire("岛国2");
        fire("米国",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);
    }
​
}

1.什么是方法重载?

一个类中,多个方法的名称相同,但他们形参列表不同。

2.方法重载需要注意什么?

形参列表不同指的是:个数、类型、顺序不同,不关心形参的名称。

3应用场景?

处理一类业务,提供多种解决方案。

补充知识:在方法中单独使用return关键字

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

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

public class ReturnDemo1 {
    public static void main(String[] args) {
        //目标:掌握return单独使用:return;在无返回值方法中的作用:跳出并立即结束当前方法的执行。
        System.out.println("程序开始");
        chu(10,0);
        System.out.println("程序结束");
    }
​
    public static void chu(int a, int b){
        if (b==0){
            System.out.println("您的数据有问题,不能除0");
            return;//跳出并结束当前的方法的执行
        }
        int c = a / b;
        System.out.println("除法结果是:"+c);
    }
}

1.在无返回值的方法中,如果要直接跳出并结束当前方法的执行,怎么解决?

return;跳出并结束所在方法的执行

break;跳出并结束当前所在循环的执行

continue;结束当前所在循环的当次继续,进行下次执行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值