50分!请问个java基础问题

来源:百度知道 编辑:UC知道 时间:2024/05/19 19:05:38
就是看到别人定义方法的时候
在形参的那里打了3个... 是什么意思啊?
怎么用啊
能不能拜托谁给我说一下 关键是怎么用

有点像
public void method(Class... aaa){}
(这个Class可以换成其他的吗? 是什么意思啊)

这个是java中的不定长参数(Variable-length Argument),下面详细说明一下:

  不定长参数的由来:
  我们在调用某个方法的时候,如果事先无法决定参数的个数,例如最简单的输出语句:System.out.println();这里面是无法事先决定要给的参数的个数的,比如输出一个a1,就要写System.out.println(a1);如果输出两个,就要改为System.out.println(a1,a2);怎么解决这个问题呢?
  自J2se5.0之后开始支持不定长参数(Variable-length Argument),这样就可以直接解决上述问题,来看一个范例:

  public class Variable{
  public static int sum(int... nums){ //使用...声明参数
  int sum = 0;
  for(int num : nums){
  sum+=num;
  }
  return sum;
  }
  这个范例就介绍了不定长参数的用法,其中...就是它的标志,要加在类型关键词后面。其实仔细分析一下可知,nums就是一个数组,编译器会将参数行的(int... nums)解释为(int[] nums)。下面我们就来使用一下上面的这个使用了不定长参数的方法,代码如下:
  public class TestVariable{
  public static void main(String[] args){
  int sum = 0;

  sum = Variable.sum(1,2);
  System.out.println("1+2="+sum);

  sum = Variable.sum(1,2,3);
  System.out.println("1+2+3="+sum);

  sum = Variable.sum(1,2,3,4,5);
  System.out.print