Java:返回双方法(数组值的总和)

时间:2013-12-15 14:47:43

标签: java arrays

在方法中返回double值时返回不起作用,但在调用 System.out.println(EnergyPerDay_Wh); 时,它会显示我想知道如何获取的值 EnergyPerDay_Wh 作为方法的返回值,方法如下:

public double CalculateEnergyPerDay() {

        double TotalPower = 0 ;
        double EnergyPerDay_Wh = 0 ;

        Device [] DEVICE = new Device [3] ;



        for(int j=0 ; j <= 3 ; j++)

        {       

            DEVICE [j]  = new Device();

            DEVICE[j].NumberOfItems    =   1         ;//---------------> user input

            DEVICE[j].Power_W          =   1         ;//---------------> user input

            DEVICE[j].HoursOfUsage_H   =   1         ;//---------------> user input

            TotalPower = DEVICE[j].NumberOfItems * DEVICE[j].Power_W * DEVICE[j].HoursOfUsage_H ; 

            EnergyPerDay_Wh += TotalPower ;

        }


        System.out.println(EnergyPerDay_Wh);


        return EnergyPerDay_Wh;
}

我尝试了不同的方法,即使使用 double 字符串,或者更改 outPut流然后将其保存到字符串变量< /强>

调用方法:

public class EBC {

    public static void main(String[] args) {


        TakingInput ti = new TakingInput(); 

        ti.CalculateEnergyPerDay();

    }

TakingInput 是具有方法

的类

5 个答案:

答案 0 :(得分:0)

您声明要返回String并返回double

答案 1 :(得分:0)

将方法返回类型更改为Double

答案 2 :(得分:0)

首先,当您的方法实际调用getDeviceInfoAndCalculateEnergyPerDay时,您正在调用名为CalculateEnergyPerDay的方法。

此外,您需要对方法返回的值执行某些操作。例如打印出来:

System.out.println(ti.CalculateEnergyPerDay());

答案 3 :(得分:0)

似乎你对方法签名有一个小错误。在顶部,您将方法声明为字符串,并返回一个double值。

您可以将方法签名更改为double:

public double CalculateEnergyPerDay() 

或者你可以这样做来返回一个字符串值:

return ""+EnergyPerDay_Wh;

答案 4 :(得分:0)

使用String.valueOf(Energy PerDay_Wh);在你的方法。除非您更改返回类型或返回字符串,否则您的方法将无法编译。