Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将非void方法声明为lambda_C#_Lambda - Fatal编程技术网

C# 将非void方法声明为lambda

C# 将非void方法声明为lambda,c#,lambda,C#,Lambda,我非常喜欢使用lambdas快速实现接口的方式,代码变得更短,可读性更强。。。我们可以使用lambda来实现属性 public ICollection<TKey> Keys => _dict.Keys; public TValue this[TKey key] { get => _dict[key]; set => _dict[key] = value; } 但我不知道如何使用lamdba重写非void方法?比如这个: public bool ContainsK

我非常喜欢使用lambdas快速实现接口的方式,代码变得更短,可读性更强。。。我们可以使用lambda来实现属性

public ICollection<TKey> Keys => _dict.Keys;

public TValue this[TKey key] { get => _dict[key]; set => _dict[key] = value; }
但我不知道如何使用lamdba重写非void方法?比如这个:

public bool ContainsKey(TKey key)
{
    return _dict.ContainsKey(key);
}

语法相同:

public bool ContainsKey(TKey key) => _dict.ContainsKey(key);

而且,这些不是真正的lambda表达式,而是“表达式体成员”;参见:

公共bool-ContainsKey(TKey-key)=>\u dict.ContainsKey(key)?而且,这些不是真正的lambda表达式,而是“表达式体成员”。。
public bool ContainsKey(TKey key) => _dict.ContainsKey(key);