Java 我有代码来获取成本,但是我如何重新编写代码来获取名称呢?
我将其输出到一个类似于收据的文件中,但我不确定是否有更好的方法来重写成本,将名称包含在其中Java 我有代码来获取成本,但是我如何重新编写代码来获取名称呢?,java,Java,我将其输出到一个类似于收据的文件中,但我不确定是否有更好的方法来重写成本,将名称包含在其中 public double getToppingCost() { double toppingCost = 0.0; if (creamCheese.isSelected()) toppingCost += CREAM_CHEESE; if (butter.isSelected()) to
public double getToppingCost()
{
double toppingCost = 0.0;
if (creamCheese.isSelected())
toppingCost += CREAM_CHEESE;
if (butter.isSelected())
toppingCost += BUTTER;
if (peachJelly.isSelected())
toppingCost += PEACH_JELLY;
if (blueberryJam.isSelected())
toppingCost += BLUEBERRY_JAM;
if (nutella.isSelected())
toppingCost += NUTELLA;
return toppingCost;
}
编辑:这是我的声明。我需要编写这个方法,这样我就可以将名称和仅名称输出到一个单独的文件中,有点像收据
public final double CREAM_CHEESE = 0.50;
public final double BUTTER = 0.25;
public final double PEACH_JELLY = 0.75;
public final double BLUEBERRY_JAM = 0.75;
public final double NUTELLA = 0.50;
public final String CHEESE = "Cream Cheese";
public final String BUT = "Butter";
public final String JELLY = "Peach Jelly";
public final String JAM = "Blueberry Jam";
public final String NUT = "Nutella";
你可以做的是把所有的配料和它们的价格放在一个数组中,然后循环遍历。看看装饰设计模式,你所说的“包括名称”是什么意思。你所输出的只是一个双精度。我假设BUTTER是一个双精度值。是的,BUTTER是一个双精度值,我希望它在一个单独的方法中,但是如果我复制获取成本的代码并将其粘贴到一个新方法中,然后只更改必要的内容以使其输出名称,它只允许用户选择一个浇头。我需要它来让他们选择多个浇头。你能添加一个例子,显示你期望的输出,其中的名称吗?
toppings.getSelected().stream()
.map(t -> t.getName() + " - " + t.getPrice())
.collect(Collectors.joining("\n"));