A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Zenith 中级黑马   /  2014-1-6 22:59  /  865 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我听5遍了  还是不明白  为什么int sum=x;,既然赋值了,为什么还要把args[0] ,也就是1的值赋给它。断点运行也调试了,为什么把x赋值给sum后,数组中只剩下2,3.了 怎么断点上args[0]=2;args[1]=3;????

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 淡定

查看全部评分

2 个回复

倒序浏览
本帖最后由 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;????
复制代码
回复 使用道具 举报
你的x,不是可变参数,只是普通的int类型的参数,
你的agrs是可变参数,
x,是第一个位置的参数,是1.
你的agrs数组里面就两个参数agrs[0]=2,agrs[1]=3,

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马