2

ifステートメントと演算子について少し助けが必要です。どうすればこれを行うことができますか?

double AgePenalty = 0;
if (AgeOfCustomer <= 21)
{
    AgePenalty = 15;
}
if (AgeOfCustomer <= 30 && AgeOfCustomer => 21) // cant use && operator with double
{
    AgePenalty = 10;
}

これは、顧客が21歳未満の場合、特定の値札を適用することを示しています。顧客が21歳から25歳の間の場合は、より小さな値札などを適用します。

4

3 に答える 3

10

あなたのチェックAgeOfCustomer => 21は間違っています、それはそうあるべきです:AgeOfCustomer >= 21 あなたのif声明を

  if (AgeOfCustomer <= 30 && AgeOfCustomer >= 21)
于 2012-07-26T07:38:12.747 に答える
7

それ&&は問題ではありません-それはあなたの大なりまたは等しい演算子であり、それは>=ではありません=>

if (AgeOfCustomer <= 30 && AgeOfCustomer >= 21)

=>ラムダ式に使用されます。

(なぜこれが特にダブルスに関連していると考えたのかは明らかではありません...)

于 2012-07-26T07:38:19.503 に答える
2

次のように書いた方が良い

double AgePenalty = 0;
        if (AgeOfCustomer <= 21)
        {
            AgePenalty = 15;
        }
        else if (AgeOfCustomer <= 30) // as check is done for 21 already.
        {
            AgePenalty = 10;
        }

上記のコードはほとんど最適化されていません。

于 2012-07-26T07:44:05.103 に答える