-2

对不起这篇文章。这是一个意外。

4

2 回答 2

0

switch您可以在C# 7 的语句中使用小于或大于:

switch (value)
{
    case var _ when value < 10:
        // something
        break;
    case var _ when (value >= 10 && value < 50):
        // something
        break;
    case var _ when value > 50:
        // something
        break;
    default:
        // something
        break;
}

对于多个输入,请查看 C# 8 中的元组模式

于 2019-05-20T15:05:19.433 回答
0

看起来有很多重复的代码。

我将其拆分为:

decimal GetFactor( decimal artikelen )
{   // order is important!
    if( artikelen >= 50 ) return 10m;
    if( artikelen >= 10 ) return 5m;
    return 2m;
}

获取因子。然后做数学:

decimal GetLoon( decimal bruto, decimal factor ) // With factor from above result
{
    return bruto + (bruto / 100m * factor);
}

导致

textBox3.Text = GetLoon( bruto, GetFactor( artikelen) ).ToString();

一些额外的点:

  • 我假设这些是货币金额。=> 使用decimal,而不是浮点数!
  • 始终验证用户输入。如果无法解析值怎么办?如果 artikelen < 0 怎么办?
于 2019-05-20T15:12:40.123 回答