这是一个示例案例:
公共列表 getPizzaIngredients(pizzaName)
{
如果 PizzaName = HAWAIIAN
返回 [
起司,
番茄酱,
菠萝,
火腿];
如果 PizzaName = ITALIAN
返回 [
起司,
番茄酱,
意大利辣香肠,
橄榄];
如果比萨名称 = 肉食
返回 [
起司,
番茄酱,
意大利辣香肠,
培根,
香肠,
橄榄];
返回空值;
}
在这里,我们在每个列表中重复成分。另一种方法是:
公共列表 getPizzaIngrediants(pizzaName)
{
ing = [];
ing.add(奶酪)
ing.add(番茄酱);
if PizzaName in (HAWAIIAN) ing.add(PINEAPPLE);
if PizzaName in (HAWAIIAN) ing.add(HAM);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(PEPPERONI);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(OLIVES);
if PizzaName in (MEATLOVERS) ing.add(BACON);
if PizzaName in (MEATLOVERS) ing.add(SAUSAGE);
返回;
或者我们可以让它更简洁:
公共列表 getPizzaIngrediants(pizzaName)
{
ing = [];
ing.add(奶酪,番茄酱)
if PizzaName in (HAWAIIAN) ing.add(PINEAPPLE, HAM);
if PizzaName in (ITALIAN, MEATLOVERS) ing.add(PEPPERONI, OLIVES);
if PizzaName in (MEATLOVERS) ing.add(BACON, SAUSAGE);
返回;
现在就个人而言 - 尽管第一个示例更冗长并且涉及重复变量,但它比其他两个解决方案更具可读性和更容易修改。
是否有围绕这种编程风格/问题的约定?