2

ダーツ初心者です。注文したピザの価格を計算しています。私の現在のソリューションでは、アサーション演算子を使用しています。あなたはそれについてどう思いますか?

使ってはいけないということを何度も読みました。私のコードは大丈夫だと思いますか、それとももっと良い/違うことをしますか?

void main() {
  const List<String> order = ['margherita', 'pepperoni', 'pineapple'];
  calcTotalPrice(order: order);
}

calcTotalPrice({required List<String> order}) {
  final Map<String, double> pizzaPrices = {
    'margherita': 5.5,
    'pepperoni': 7.5,
    'vegetarian': 6.5
  };

  double total = 0.0;

  for (var item in order) {
    pizzaPrices[item] ??= 0.0;
    total += pizzaPrices[item]!; // assertion operator (!)
  }

  print(total);
}
4

1 に答える 1