java中的可变参数使用方法

时间:2022-09-23 14:15:07

java中的可变参数使用方法

可变参数时Java 1.5新增的方法,可变参数方法接收0个或者多个指定类型的参数,可变参数机制通过先创建一个数组,数组的大小为在调用位置所传递的参数数量,然后将参数值传到数组中,最后将数组传递给方法。如:

?
1
2
3
4
5
6
7
8
9
public class Test{
  public int sum(int... args) {
    int sum = 0;
    for (int arg : args) {
      sum += arg;
    }
    return sum;
  }
}

 可变参数提供了方便,但是使用可变参数时需要特别小心,可变参数方法的每次调用都会导致进行一次数组的分配和初始化,如果方法被多次调用对性能的影响会很大,但有一种方式可以适当的解除这种问题。假设确定对某个方法95%的调用会有3个或者更少的参数,就申明该方法的5个重载每个重载方法带有0至3个普通参数,当参数的数目超过3个时,就使用一个可变参数方法:

?
1
2
3
4
5
6
7
8
public class Test{
  public void method(){}
  public void method(int a1){}
  public void method(int a1, int a2){}
  public void method(int a1, int a2, int a3){}
  public void method(int a1, int a2, int a3, int... args){}
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:https://my.oschina.net/feinik/blog/842447