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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 夏的四季 中级黑马   /  2014-3-11 22:21  /  868 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 夏的四季 于 2014-3-11 22:39 编辑
  1. public class AddTest{

  2. public static void main(String[] args) {
  3. System.out.println("sum=="+add(2,3,5));

  4. }
  5. public static int add(int x,int...args){
  6. int sum = 0;
  7. for(int i=0;i<args.length;i++){
  8. sum=sum+args[i];
  9. }
  10. return sum;
  11. }
  12. }
复制代码
可变参数不是说可以用数组的计算方法计算吗?
为什么sum的值不加开始的2?
args开始的时候i不是0角标的元素2吗?


评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

4 个回复

倒序浏览
你把(int x,int...args)改成(int...args)就可以了,args只包括...里的。
回复 使用道具 举报 1 0
  1. public class AddTest{

  2.         public static void main(String[] args) {
  3.                
  4.                 System.out.println("sum=="+add(2,3,5));//2传给了x; 3,5传给了args.
  5.         }
  6.         public static int add(int x,int...args){
  7.                 int sum = 0;//这里改成int sun=x;就行了
  8.                 for(int i=0;i<args.length;i++){
  9.                         sum=sum+args[i];
  10.                 }
  11.                 return sum;
  12.         }
  13. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
菜小徐 + 1

查看全部评分

回复 使用道具 举报

哦。明白了,谢谢了
回复 使用道具 举报
Aenon 发表于 2014-3-11 22:35
你把(int x,int...args)改成(int...args)就可以了,args只包括...里的。

呵呵,明白了 ,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马