黑马程序员技术交流社区

标题: 可变参数的问题 [打印本页]

作者: 罗雪梅    时间: 2012-10-3 09:21
标题: 可变参数的问题
本帖最后由 罗雪梅 于 2012-10-3 10:18 编辑

看老师讲的时候有个问题,但视频并没解释,是这样的
public static int  add(int a,int … args)
{
    int  sum=a;
   for(int i=0;i<args.length;i++)
  {
      sum+=args;
  }
   return  sum;
}

标红的地方,传参的时候这个变量只是个int型的基本数据类型的变量,但下面怎么就当成数组去使用了呢?

作者: 黑马乔荣柱    时间: 2012-10-3 09:49
一般在参数中会有一个args 表示你输入的参数集

比如说:
public class Test
{
   public static void main(String[] args){
       //这里的args就是传入的参数数组。
  }
}

那这个程序编译后,访问可以这么写

java Test a b c
那你得到三个参数,a,b,c  你的args.length 就是3
你所说的那个是一个参数集
作者: 徐-星星    时间: 2012-10-3 09:59
"public static int  add(int a,int … args)"
这句话中的参数:int…args表示的是数组名为args的int类型的数组。
可变参数所说的就是一个长度不确定的数组。


作者: 刘进朝    时间: 2012-10-3 09:59
这个 i 是角标,而不是指的之前数组的元素.
作者: 罗雪梅    时间: 2012-10-3 10:18
娇赛赛 发表于 2012-10-3 09:59
"public static int  add(int a,int … args)"
这句话中的参数:int…args表示的是数组名为args的int类型的 ...

奥,原来int … args表示的是int类型的数组啊,明白了谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2