Символ =>
имеет разные значения в разных частях вашего кода C #.Конкретная часть, о которой вы спрашиваете здесь, называется Метод выражения выражения .
. Вы можете использовать это для объявления методов, которые имеют только один оператор.Если инструкция возвращает значение, а метод объявлен как возвращающий значение, он также будет неявно возвращать значение из инструкции.
Вот примеры методов выражения выражения:
Getter-only Properties
public int Value => 42;
Получатель и установщик
public int Value
{
get => _Value;
set => _Value = value;
}
(обратите внимание, что вы также можете смешивать и сопоставлять его с традиционным синтаксисом, чтобы у вас был метод получателя выражения body и методтрадиционный сеттер с фигурными скобками)
(свойства выражения выражения являются новыми в C # 7)
Методы
public void WriteLog(string message) => Console.WriteLine(message);
public int Sum(int a, int b) => a + b;
(первый метод ничего не возвращает, поэтому, хотя имя синтаксиса содержит «выражение», ему не нужно иметь для оценки чего-либо)
Конструкторы
public class Test
{
private readonly int _Value;
public Test(int value) => _Value = value;
(конструкторы с выражениями тела являются новыми в C # 7)
Деструктор (финализатор)
public class Test : IDisposable
{
~Test() => Dispose(false);
(деструкторы с выражениями тела являются новымив C # 7)
Конструкторы, которые устанавливают multiple values
public class Test
{
private readonly int _A;
private readonly int _B;
public Test(int a, int b) => (_A, _B) = (a, b);
(обратите внимание, что в последнем примере также используются кортежи, использует этот синтаксис для конструкторов ответственно )