黑马程序员技术交流社区

标题: 可变参数不懂请教 [打印本页]

作者: Zenith    时间: 2014-1-6 22:59
标题: 可变参数不懂请教
我听5遍了  还是不明白  为什么int sum=x;,既然赋值了,为什么还要把args[0] ,也就是1的值赋给它。断点运行也调试了,为什么把x赋值给sum后,数组中只剩下2,3.了 怎么断点上args[0]=2;args[1]=3;????


作者: Zenith    时间: 2014-1-6 23:00
本帖最后由 Zenith 于 2014-1-6 23:02 编辑
  1. package cn;

  2. public class Test {
  3.         public static void main(String[] args) {
  4.                 System.out.println(add(1,2,3));
  5.         }
  6.         
  7.         public static int add(int x,int...agrs)
  8.         {
  9.                 int sum=x;
  10.                 for (int i = 0; i < agrs.length; i++) {
  11.                         sum+=agrs[i];
  12.                 }
  13.                
  14.                 return sum;
  15.         }
  16. }我听5遍了  还是不明白  为什么int sum=x;,既然赋值了,为什么还要把args[0] ,也就是1的值赋给它。断点运行也调试了,为什么把x赋值给sum后,数组中只剩下2,3.了 怎么断点上args[0]=2;args[1]=3;????
复制代码

作者: 一年之后    时间: 2014-1-6 23:57
你的x,不是可变参数,只是普通的int类型的参数,
你的agrs是可变参数,
x,是第一个位置的参数,是1.
你的agrs数组里面就两个参数agrs[0]=2,agrs[1]=3,




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