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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhangchao5292 中级黑马   /  2016-2-23 11:52  /  947 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求数组中各元素的和
class  HanShu05
{
        public static void main(String[] args)
        {
                int[] arr={2,4,5,6,8,9,0,1};
                int sum=0;
                for (int x=0;x<arr.length ;x++ )
                {
                        sum+=arr[x];
                }
                System.out.println(sum);
        }
}
上面运行结果是35;
下面是想定义一个函数,求数组的和,但是出问题了
class  HanShu05
{
        public static void main(String[] args)
        {
                int[] arr={2,4,5,6,8,9,0,1};

                int z=getSum();
               
                System.out.println(z);

        }
        public static int getSum()
        {       
                int sum=0;
                for (int x=0;x<arr.length ;x++ )
                {
                        sum+=arr[x];      运行后此行错误:找不到符号
                }
           return sum;
       
        }                       
}
求指点一下,谢谢~



9 个回复

倒序浏览
要把arr传到你的getSum里啊
  1. int z=getSum(arr);


  2. public static int getSum(int[] arr){}
复制代码

点评

你居然没有水贴  发表于 2016-2-24 18:47

评分

参与人数 1黑马币 +1 收起 理由
洋葱头头 + 1

查看全部评分

回复 使用道具 举报
int z=getSum();改为 int z = getSum(arr); 实参和形参要对应

评分

参与人数 1黑马币 +1 收起 理由
洋葱头头 + 1

查看全部评分

回复 使用道具 举报
方法除了确定返回值类型,还要确定传递的参数列表。public static int getSum(int  arr){   }

评分

参与人数 1黑马币 +1 收起 理由
洋葱头头 + 1 很给力!

查看全部评分

回复 使用道具 举报
没有实行参数吧?
回复 使用道具 举报
因为你是要求 arr数组里的和,你没有把参数 arr 传进来,在getSum()方法里它就不知道要对谁进行累加了,所以就会出现你的那个错误。
回复 使用道具 举报
getSum()没有将参数传进来
回复 使用道具 举报
不知道,帮顶
回复 使用道具 举报
曾宇 中级黑马 2016-2-24 14:17:19
9#
少年,变量作用区域。你需要多多了解。如果你还没有学会参数传递。那么,请将你的数组定义在类里面,整个类通用。否则就老老实实的传递参数运算
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马