Day19--可变参数

Day19--可变参数

从 JDK 1.5 开始,Java 支持传递同类型的可变参数给一个方法。

在方法声明中,在指定参数类型后加一个省略号(...)。

一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

有时候,代码里面的方法重载有很多,看着很繁琐,这就需要我们引入可变参数

以下是 Java 方法定义:
1. `public void method(int i){}`
2. `public void method(int i,int i2){}`
3. `public void method(int i,double i2){}`

例子;设计方法,要输入多个i,不确定数目,并输出i

package com.liu.www.method;

public class Demo04 {
    public static void main(String[] args) {
        Demo04 demo04 = new Demo04();
        demo04.test(1,2,3,4,5,6);
    }
    //例子;设计方法,要输入多个i,不确定数目,并输出i
    public static void test(int ... i) {
        System.out.println(i[0]);
        System.out.println(i[1]);
        System.out.println(i[2]);
        System.out.println(i[3]);
        System.out.println(i[4]);
        System.out.println(i[5]);
    }

}

对这个例子的详细解释:

以下是对这段代码中`Demo04 demo04 = new Demo04(); demo04.test(1,2,3,4,5,6);`的解释:

1. `Demo04 demo04 = new Demo04();`:
   - 这行代码创建了一个名为`demo04`的对象,类型为`Demo04`。通过使用`new`关键字调用类的构造方法,创建了这个类的一个实例。

2. `demo04.test(1,2,3,4,5,6);`:
   - 这里调用了`demo04`对象的`test`方法,并传入了六个整数参数`1,2,3,4,5,6`。
   - 在`test`方法中,使用可变参数`int... i`接收这些参数,然后分别打印出这些参数中特定位置的值。

总的来说,这段代码的作用是创建一个`Demo04`类的对象,然后调用该对象的`test`方法,并传入一组整数参数进行处理。

以下是一个示例方法:

在输入的值当中打印出最大的值

package com.liu.www.method;

public class Demo04 {
    public static void main(String[] args) {
        printMax(1,2,3,4,5);
        printMax(new double[]{1,2,3});
    }
    public static void printMax(double... numbers) {  //printMax:打印最大的值     不确定有多少个数
        if (numbers.length == 0) {
            System.out.println("No argument passed");
            return;
        }
        double result = numbers[0];
        // 排序
        for (int i = 1; i < numbers.length; i++) {
            if (numbers[i] > result) {
                result = numbers[i];
            }
        }
        System.out.println("The max value is " + result);
    }

}

posted @ 2024-10-20 10:22  1hahahahahahahaha  阅读(4)  评论(0编辑  收藏  举报