我将如何跟踪这个java数组代码片段 publicstaticvoidaddbonus(双[]数组,双加) { for(int k=0;k

我将如何跟踪这个java数组代码片段 publicstaticvoidaddbonus(双[]数组,双加) { for(int k=0;k,java,arrays,add,system.out,Java,Arrays,Add,System.out,我看到这是一个改变数组内容的方法的执行,我从运行循环开始,一直到+奖金部分,我都很好,我知道数组[k]对于[0]来说是45.6,等等,但我不确定我是否应该添加3.0。我想我的问题是,不理解addBonus(分数,3.0)这一行。 感谢您的时间,我对java比较陌生是的,您的每个数组元素将增加3.0奖金,您将通过addBonus(分数,3.0)获得奖金 行中addBonus(scores,3.0)您正在调用带有参数scores和3.0的方法addBonus。因此,这些将被复制到方法的各自参数add

我看到这是一个改变数组内容的方法的执行,我从运行循环开始,一直到+奖金部分,我都很好,我知道数组[k]对于[0]来说是45.6,等等,但我不确定我是否应该添加3.0。我想我的问题是,不理解addBonus(分数,3.0)这一行。
感谢您的时间,我对java比较陌生

是的,您的每个数组元素将增加3.0奖金,您将通过addBonus(分数,3.0)获得奖金

行中
addBonus(scores,3.0)
您正在调用带有参数
scores
3.0
的方法
addBonus
。因此,这些将被复制到方法的各自参数
addBonus(double[]数组,double bonus)
。因此,
bonus
将具有值
3.0

这里
array[k]=array[k]+奖金
您正在向所有数组元素添加
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]);
}