public class FinalProb {
public static void main(String[]junk) {
int[] huskey = {1, 8, 5};
int beagle = 0;
for (int k = 0; k < huskey.length; k++) {
beagle += huskey[ k ];
System.out.println( beagle );
}
}
}
显然,系统输出会给出答案:
1
9
14
所以基本上,有人可以向我解释顶部代码如何提供输出?如果可能的话,请尽可能地愚蠢,因为截至目前,我不知道这是怎么发生的。感谢任何能够提供帮助的人,我希望你们都有一个美好的夜晚:D
答案 0 :(得分:1)
这是对评论的重述,但更详细一点。
拿一张纸和一支铅笔。将纸张分成&#34; k&#34;和#34; beagle&#34;,以及如果你感到困惑的笔记栏。
首先在其列中写入beagle
的初始值:0。
转到循环。在其列中写入k
的初始值:0。检查是否进行循环迭代:它是否小于huskey
数组的长度?它是。
现在进入第一次迭代的+=
。通过查找k
的值并索引到huskey
数组来评估右侧。添加到beagle
的当前值并将其写入beagle
列。这会将1放在beagle
列中。
现在转到println
。它将打印您在beagle
列中编写的最后一个值,1。
返回for
。它会将k
增加1,因此在k
列中写入1。和以前一样,检查k
的当前值是否小于数组长度...
继续这样做,将每个变量的最新值保留为其列中的最后一个条目。通过练习,你可以在头脑中做到这一点,但是直到你可以,在纸上做。
答案 1 :(得分:1)
public class FinalProb {
public static void main(String[]junk) { // must be separated by space
//**************** variable initialization ******************
int[] huskey = {1, 8, 5}; //declaration of int array
int beagle = 0; // int declaration
//***********************************************************
// loop until k reaches huskey array lenght (it loops 3 times because huskey length is 3)
for (int k = 0; k < huskey.length; k++) {
beagle += huskey[ k ]; // add the values of huskey with given index 'k' to beagle variable
// huskey[0] = 1
// huskey[0] = 8
// huskey[0] = 5
System.out.println( beagle );
}
}
}
// 0 + 1 = 1 (new beagle value in first loop)
// 1 + 8 = 9 (new beagle value in second loop)
// 8 + 5 = 14 (new beagle value in third loop)
// expected output:
// 1
// 9
// 14
答案 2 :(得分:0)
k的值从0开始并且以K <0结束。 length.husky(这是3):
当k = 3时,3不是&lt;因此,循环将结束 结果是: 当人们说:beagle + =(某事)时,它意味着beagle = beagle +(某事),那么beagle的值将改为[beagle +(something)]。由于beagle初始化为0,因此它会继续添加数组husky []内的值。 所以:
希望这有帮助。