Java - 可变参数

* 可变参数:JDK1.5之后出现的新特性
* 使用前提:
*       当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数
* 使用格式:定义方法时使用
*       修饰符 返回值类型 方法名(数据类型...变量名){}
* 可变参数的原理:
*       可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数
*       传递的参数个数,可以是0个(不传递),1,2...多个
* 可变参数的注意事项:
*       1.一个方法的参数列表,只能有一个可变参数
*       public static int method(int...a, String...b){}//错误的
*       public static int method(int a, char s, String...b){}//正确的
*       2.如果方法的参数有多个,那么可变参数必须写在参数列表的末尾
* 可变参数的特殊写法(终极写法):
*       public static void method(Object...ob){}

 

import java.util.*;
/*

*/
public class Main {
    /*
    //定义一个方法,计算两个int类型整数的和
    public static int add(int a, int b){
        return a + b;
    }
    //定义一个方法,计算三个int类型整数的和
    public static int add(int a, int b, int c){
        return a + b + c;
    }
    */
    /*
    * 定义计算(0-n)整数和的方法
    * 已知:计算整数的和,数据类型已经确定为int
    * 但是参数的个数不确定,不知道要计算几个整数的和
    * 这种情况下就可以使用可变参数
    * add();就会创建一个长度为0的数组,new int[0];
    * add(10);就会创建一个长度为1的数组,new int[]{10};
    * add(10, 20);就会创建一个长度为2的数组,new int[]{10, 20};
    * */
    public static int add(int...arr){
        //System.out.println(arr);//[I@1b6d3586 底层是一个数组
        //System.out.println(arr.length);//0

        //定义一个初始化变量,记录累加求和
        int sum = 0;
        //遍历数组,获取数组中的每一个元素
        for (int i : arr){
            sum += i;
        }
        return sum;
    }
    public static void main(String[] args) {
        int i = add(1, 2, 3, 4, 5);
        System.out.println(i);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值