我该如何追踪这个java数组代码片段
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(分数,3.0)这一行。 感谢您抽出时间,我对java还比较陌生
# 1 楼答案
在第
addBonus(scores, 3.0)
行中,您正在使用参数scores
调用方法addBonus
&3.0
。因此,这些将被复制到方法addBonus(double[] array, double bonus)
的各自参数中。所以bonus
将具有值3.0
这里
array[k] = array[k] + bonus;
您正在向所有数组元素添加3.0