gpt4 book ai didi

java - 披萨课。添加一个名为 setOfToppings 的集合作为属性。使用Java

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:02:55 26 4
gpt4 key购买 nike

我基本上需要将一组添加到我已经拥有的东西上,以允许“客户”在创建比萨饼后添加或删除浇头。这是我已经拥有的:

package pizza;

public class Pizza {

// Declare enums
public enum Size{
SMALL,
MEDIUM,
LARGE,
JUMBO
}

public enum Crust{
CHEESY,
HAND_TOSSEDS,
THIN_AND_CRISPY,
DEEP_PAN
}

public enum Topping{
MUSHROOMS,
GREEN_PEPPERS,
HAM,
PEPPERONI,
SAUGSAGE
}


// declare variables
private Size pizzaSize;
private Crust crustType;

private Set<Topping> setOfToppings = new EnumSet<Topping>(Topping.class);

public Pizza(){

}

public Pizza(Size pizzaSize, Crust crustType) {
this.pizzaSize = pizzaSize;
this.crustType = crustType;
}

public Size getPizzaSize() {
return pizzaSize;
}
public void setPizzaSize(Size pizzaSize) {
this.pizzaSize = pizzaSize;
}
public Crust getCrustType() {
return crustType;
}
public void setCrustType(Crust crustType) {
this.crustType = crustType;
}

public String toString(){
return "A "+pizzaSize+" Pizza with "+crustType+" crust" + "with topping: " + setOfToppings;
}


}

这是测试代码:

package pizza;
import pizza.Pizza.Crust;
import pizza.Pizza.Size;

public class PizzaTest {

public static void main(String[] args) {

// use constructor 1
Pizza vegieCrunch = new Pizza();
vegieCrunch.setCrustType(Crust.THIN_AND_CRISPY);
vegieCrunch.setPizzaSize(Size.MEDIUM);

// constructor 2
Pizza doubleCheese = new Pizza(Size.LARGE, Crust.CHEESY);

Pizza PartyPizza = new Pizza(Size.JUMBO, Crust.DEEP_PAN);

// use of getters
System.out.println("Pizza Vegie Crunch::");
System.out.println("Size: "+vegieCrunch.getPizzaSize());
System.out.println("Crust Type: "+vegieCrunch.getCrustType());

// use of toString
System.out.println("\nPizza Double Cheese:");
System.out.println(doubleCheese.toString());

System.out.println("\nPizza Country Feast:");
System.out.println(PartyPizza.toString());

}

}

我目前的代码运行良好,我只需要帮助添加一个额外的 Enum Toppings 并添加一个名为 setOfToppings 的集合,这样当我测试它时,“客户”可以在创建披萨后添加或删除浇头。提前谢谢你,我对 java 比较陌生,所以也欢迎任何提示或建议!

最佳答案

[...] I just need help with adding an additional enum Toppings

与您定义其他枚举的方式相同:

public enum Topping {
PINEAPPLE,
BANANA
}

[...] and add a set named setOfToppings

然后添加一个字段:

private Set<Topping> setOfToppings = EnumSet.noneOf(Topping.class);

您可以创建访问方法,例如

public void addTopping(Topping topping) {
setOfToppings.add(topping);
}

public Set<Topping> getToppings() {
return setOfToppings;
}

public void addManyToppings(Topping... toppings) {
setOfToppings.addAll(Arrays.asList(toppings));
}

关于java - 披萨课。添加一个名为 setOfToppings 的集合作为属性。使用Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26443921/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com