在左侧带有“ get”关键字的lambda表达式有什么作用?

时间:2019-07-11 18:43:54

标签: c# lambda properties

我一直在从事一个项目,遇到了一些以前从未见过的代码。这是以下代码:

public double TransferRateInGPM
        {
            get => Conversions.LToGal(TransferRateInLPM); // what does this line do?
            set
            {
                TransferRateInLPM = Conversions.GalToL(value);
            }
        }
        private double _transferRateInLPM = Conversions.GalToL(Constants.TRANSFER_RATE_GPM);

如果有帮助,可以这样定义TransferRateInLPM:

public double TransferRateInLPM
        {
            get
            {
                return _transferRateInLPM;
            }
            set
            {
                SetField(ref _transferRateInLPM, value);
                UpdateAllOperationRates();
            }
        }

我一直在尝试理解语句get => Conversions.LToGal(TransferRateInLPM);,但实际上我对一般属性几乎一无所知,而lambda表达式让我对此更加困惑。据我了解,get关键字在其“块”中期望有返回语句。 lambda表达式是否有助于保持事物整洁,并避免使用定义函数和调用它的方法?例如:

get
{
   return myFunc(x);
}

double myFunc(x)
{
   return convert(x);
}

上面的代码是否与get => convert(x);相同?

0 个答案:

没有答案