ブロックの外部で既に確立され、内部で呼び出されている double 変数を取得しようとすると問題が発生しますが、同じ変数の値を返して計算に適用できるようにしたいと考えています。
返される変数は次のとおりです。
double quarter = 0;
しかし、最初のelse/ifステートメントでクォーターにプラグインする0
と、switchブロックの値ではなくプラグインされます。値を取得するにはどうすればよいですか?
double quarter = 0;
//Date entry will be calculated by how much KW user enters
switch (input)
{
case "2/15/13":
quarter = kwUsed * 0.10;
break;
case "4/15/13":
quarter = kwUsed * 0.12;
break;
case "8/15/13":
quarter = kwUsed * 0.15;
break;
case "11/15/13":
quarter = kwUsed * 0.15;
break;
default:
System.out.println("Invalid date");
}
//Declaring variables for calculations
double base = 0;
double over = 0;
double excess = 0;
double math1 = 0;
double math2 = 0;
//KW Calculations
if (kwUsed <= 350)
{
base = quarter;
}else if (kwUsed <= 500)
{
math1 = ((kwUsed - 350) * quarter);
base = ((kwUsed * quarter) - math1);
over = ((math1 * 0.1) + math1);
}else if (kwUsed > 500)
{
math2 = ((kwUsed - 350) * 0.1);
base = ((kwUsed * 0.1) - math2);
math2 = ((kwUsed -350) - 50);
over = ((math2 * 0.1) + (15 * 0.1));
double math3 =((kwUsed - 500) * 0.1);
excess = ((math3 * 0.25) + math3);
}
質問を明確にするために編集されました。