如果我有一系列的if / else语句想要获得一个特定值,那么我将如何在等式之外访问该值?我正在通过命令提示符,并且没有任何其他类。

if (shippingInput == 1)
{
    double shippingAmount = shippingDetails * 3;
}
else if (shippingInput == 2)
{
    double shippingAmount = shippingDetails * 4;
}
else
{
    double shippingAmount = shippingDetails * 5.5;
}


在我的代码快要结束时

double shippingCost = shippingAmount + surcharge;


但它表示在当前上下文中不存在名称“ shippingAmount”和“ surcharge”。

谢谢你的帮助!我还不能标记答案,但是在if / else括号之外声明该语句并从每个括号中删除双精度词后,它就可以很好地工作了。

最佳答案

您每次都在创建新变量。像这样声明一次:

double shippingAmount;

if (shippingInput == 1)
{
    shippingAmount = shippingDetails * 3;
}
else if (shippingInput == 2)
{
    shippingAmount = shippingDetails * 4;
}
else
{
    shippingAmount = shippingDetails * 5.5;
}

10-07 15:33