-1

我正在尝试获取一个程序,以便它循环并将数组的总和相加。我的代码似乎可以正常工作,但它指出 text[j] inadding = adding + text[j]是不兼容的类型(我假设是数据类型)。在代码的前面,我有int adding = 0;. 这是错误的代码:

for (int j=0;j<=total;j++){
       adding = adding + text[j];
       System.out.println(text[j]);
    }

其中总计是限制因素。如果我放:

for (int j=0;j<= total;j++){
       adding = adding + j;
       System.out.println(text[j]);
    }

程序编译但给出 45,这是不正确的。

为什么会这样?谢谢!

4

2 回答 2

1

答案实际上在给出的代码之外。我已将数组设置为 a String,而不是int应有的 a 。

于 2012-10-11T02:46:39.703 回答
0

如果您的text[]is String[]orchar[]顾名思义,那么我相信您正在尝试text[]使用后缀jor更新元素adding,您可以将其写为:

如果是char[]那么写

    text[j] = (char)(adding + (int)text[j]);

如果是String[]那么写

     text[j]= text[j]+adding;

按要求。这完全取决于数据类型是text[]什么以及您要实现什么?

同样如其中一个答案所建议的那样,如果total是数组的长度,则将比较更改<为 avoindArrayIndexOutOfBoundsException

您的第二个示例添加jadding但打印text[j]值,这与添加无关addingand j

于 2012-10-11T02:47:27.610 回答