我将如何去追踪这个 java 数组代码片段
How would I go about tracing this java arrays code snippet
public static void addBonus(double[] array, double bonus)
{
for (int k = 0; k < array.length; k++)
{
array[k] = array[k] + bonus;
}
}
public static void main(String[] args)
{
double[] scores = { 45.6, 67.8, 89.4 };
addBonus(scores, 3.0);
System.out.print(scores[2]);
}
我看到这是一个改变数组内容的方法的执行,我从 运行 开始循环,直到我到达 + 奖励部分,我知道数组[ k] 对于 [0] 将是 45.6 等等,但我不确定 3.0 是否是我应该添加的。我想我的问题是不理解 addBonus(scores, 3.0) 行。
谢谢你的时间,我对 java
比较陌生
是的,你的每个数组元素都会增加 3.0 的奖金,你在 addBonus(scores, 3.0);
在行 addBonus(scores, 3.0)
中,您使用参数 scores
和 3.0
调用方法 addBonus
。所以这些将被复制到它们各自的方法参数中addBonus(double[] array, double bonus)
。所以 bonus
将具有值 3.0
.
此处 array[k] = array[k] + bonus;
您要将 3.0
添加到所有数组元素。
public static void addBonus(double[] array, double bonus)
{
for (int k = 0; k < array.length; k++)
{
array[k] = array[k] + bonus;
}
}
public static void main(String[] args)
{
double[] scores = { 45.6, 67.8, 89.4 };
addBonus(scores, 3.0);
System.out.print(scores[2]);
}
我看到这是一个改变数组内容的方法的执行,我从 运行 开始循环,直到我到达 + 奖励部分,我知道数组[ k] 对于 [0] 将是 45.6 等等,但我不确定 3.0 是否是我应该添加的。我想我的问题是不理解 addBonus(scores, 3.0) 行。 谢谢你的时间,我对 java
比较陌生是的,你的每个数组元素都会增加 3.0 的奖金,你在 addBonus(scores, 3.0);
在行 addBonus(scores, 3.0)
中,您使用参数 scores
和 3.0
调用方法 addBonus
。所以这些将被复制到它们各自的方法参数中addBonus(double[] array, double bonus)
。所以 bonus
将具有值 3.0
.
此处 array[k] = array[k] + bonus;
您要将 3.0
添加到所有数组元素。