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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. class Dome
  2. {
  3.   public static void main(String [] args)
  4.   {
  5.      int[] a=new int[10];
  6.      int sum=0;
  7.      for(int i=0;i<a.length;i++)
  8.      {
  9.         sum+=a[i];
  10.      }
  11.     System.out.println(sum);
  12.    
  13.   }
  14. }
复制代码

为什么结果会是0?我是想算0加到10

51 个回复

倒序浏览
先要给数组赋值
回复 使用道具 举报
int[10]  长度是10 然后呢。。
回复 使用道具 举报

如果我没理解错的话数组不需要值
回复 使用道具 举报
破烂小白 发表于 2015-5-14 16:19
int[10]  长度是10 然后呢。。

在For循环中调用数组长度
回复 使用道具 举报
你的数组里面的值都是0 啊,你要给你的数组附上你想要的值,加起来才是你想要的值。
回复 使用道具 举报
油炸电视剧 发表于 2015-5-14 16:28
你的数组里面的值都是0 啊,你要给你的数组附上你想要的值,加起来才是你想要的值。 ...

需要补代码?
回复 使用道具 举报
你创建的是一个数据类型为int ,长度为 10的数组,但是你并没有对这个数组中的每个元素进行赋值,所以,这个数组的每个元素在系统中默认的初始化值都为0;所以,10个0相加结果只能等于0,希望能解决你的疑惑
回复 使用道具 举报
油炸电视剧 发表于 2015-5-14 16:28
你的数组里面的值都是0 啊,你要给你的数组附上你想要的值,加起来才是你想要的值。 ...

需要补代码?
回复 使用道具 举报
数组需要初始化,不初始化没有意义,
回复 使用道具 举报
int[] a=new int[10];这只是你定义了数组有多大,
for(int i=0;i<a.length;i++){
a[i]=1;
}这样才是赋值
回复 使用道具 举报
没有给数组赋值  ,数组默认值是0.   所以相加是0
回复 使用道具 举报
int[] a=new int[10]; 是创建一个能放10个整数的数组,数组的数据因为没有,默认都是零
回复 使用道具 举报
因为你的数组没有赋值,默认里面元素初始值都是0
回复 使用道具 举报
数组没有赋值呀大哥。你光遍历数组了没有赋值。
回复 使用道具 举报
你数组里面一个元素都没有啊
回复 使用道具 举报
你的数组里面都没赋值,当然得不到正确的值了,想从0加到10,为什么要用数组?
回复 使用道具 举报
Cat 中级黑马 2015-5-14 18:55:32
18#
学习一下~
回复 使用道具 举报
感觉同上,
回复 使用道具 举报
你只是定义一个10位的数组 但是你没有给每个位赋值 所以默认都是0;而你sum+=a[i];相当于sum+=0;
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马