在 java 中连接数组中循环的结果

concatenate the result of loop in array in java

我在 for 循环之前声明了数组,现在我想将 for 循环的结果连接到数组中。以下不起作用并给我错误 "error: cannot find symbol".

我的密码是

for(int j=i; j<=arr.length-1; j++){             

    // checking for condition
    if (i<j )
    {
        int temp = arr[i]+arr[j];
        if (temp%sum==0) {
        System.out.println("Pair with given sum " +
                            sum + " is (" +temp+")");
            result[] += temp;
        }
    }

你的代码是这样的..在循环中提及结果索引并在使用前声明它。 click here 查看为什么会出现该错误。

您能否提供 int i 值,以便我们可以帮助您进行循环。

int result = new int[100] //give value according to your program.
for(int j=i; j<=arr.length-1; j++){             
// checking for condition
if (i<j )
{
    int temp = arr[i]+arr[j];
    if (temp%sum==0) {
    System.out.println("Pair with given sum " +
                        sum + " is (" +temp+")");
        result[j] += temp;
    }
}    `

你的错误在这里

result[] += temp;

您需要为您的数组提供一个索引,它可以在其中存储值

尝试这样的事情

result[i] += temp;

另请注意,这将创建一个具有不同 temp 值的数组。

此外,在您的 for 循环中,您正在执行 j=i 然后检查

if(i<j)

因此您的循环将在 1 次迭代后 运行,因为第一次条件将为假。

如果您不必打印值 temp 而只打印值的数量,那么您根本不需要数组。

您可以简单地创建一个变量

int count=0;

然后将 for 循环更改为类似这样的内容

if (temp%sum==0) {
        System.out.println("Pair with given sum " +
                            sum + " is (" +temp+")");
            count++;
        }

然后打印计数。

如果必须使用数组,你可以像

一样打印数组的长度

result.length

希望这对您有所帮助:)

数组不起作用,因为你可能 think.When 你创建了一个像这样的数组

int x[10] = new int[10]; 

您可以像这样访问数组的元素: 例如,如果您想要第一个元素 x[0] 第二个 x[1](您统计从 0 到数组长度 - 1)。那么您在这里所做的事情:

result[] += temp;

不会让 sense.You 总是指定您想要访问的元素的索引(您可能想要类似 result[index] += temp;).

希望我帮到了你。

您的错误在行

result[] += temp;

您需要提及要连接结果的数组索引。 例如

//your code goes here
.....
for (int k = index_of_resultArray_to concatenate; k < result.length; k++) {
    result[k] += temp;
}