private const decimal piece_rate_199 = 0.5M, piece_rate_399 = 0.55M,
piece_rate_599 = 0.6M,
piece_rate_600= 0.65M;
private decimal Payrate, TotalPay, AveragePay, WorkerCount, PayEarnedDecimal, PayDecimal;
private int TotalPieces, QuantityInteger;
private string MessageString;
public Form1()
{
InitializeComponent();
}
private decimal FindPayRate()
{
QuantityInteger = int.Parse(textNumberPiece.Text);
switch (QuantityInteger)
{
case QuantityInteger >= 600:
PayDecimal = piece_rate_600;
break;
case 400 >= 599:
PayDecimal = piece_rate_599;
break;
case 200 >= 399:
PayDecimal = piece_rate_399;
break;
case 1 >= 199:
PayDecimal = piece_rate_199;
break;
}
请解决这个我完全是一个初学者
@Mureinik 的解决方案是正确的,我只是想添加一种方法来做你想做的,同时仍然使用switch
语句。您可以when
在 a中使用switch
以获得想要的结果:
switch (QuantityInteger)
{
case int n when (n >= 600):
PayDecimal = piece_rate_600;
break;
case int n when (n >= 400 %% n <= 599:
PayDecimal = piece_rate_599;
break;
case int n when (n >= 200 && n <= 399):
PayDecimal = piece_rate_399;
break;
case int n when (n >= 1 && n <= 199:
PayDecimal = piece_rate_199;
break;
}
在我看来,这比使用if-else
语句更具可读性
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句