在方法中返回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 是具有方法
的类答案 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);在你的方法。除非您更改返回类型或返回字符串,否则您的方法将无法编译。