如何创建DRYer构造函数

 秋忆道格 发布于 2023-02-11 17:06

有什么办法可以让以下任何构造函数重复性降低吗?即只使用一个构造函数或没有多个'topping.add'调用?我的目标是制作一个可以有1,2或3种不同配料的披萨

private PizzaBase base;
List toppings = new ArrayList();

public Pizza(PizzaBase base, PizzaTopping topping) //Constructor for pizza with 1 topping
{
    setBase (base);
    toppings.add(topping);
}

public Pizza(PizzaBase base, PizzaTopping topping, PizzaTopping topping2) //Constructor for pizza with 2 toppings
{
    setBase (base);
    toppings.add(topping);
    toppings.add(topping2);
}

public Pizza(PizzaBase base, PizzaTopping topping, PizzaTopping topping2, PizzaTopping topping3) //Constructor for pizza with 3 toppings
{
    setBase (base);
    toppings.add(topping);
    toppings.add(topping2);
    toppings.add(topping3);

}

最初我在考虑使用for循环将提供的顶部添加到列表中,但我不确定如何迭代构造函数给出的值

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有