_ =>, что это подчеркивает средний в Лямбда-выражениях?

Что любит лямбда-выражение _=> expr средний?

Из чего цель _ как введено к лямбде?

Пример:

int count = 0;
list.ForEach(_ => count += 1);
105
задан Colonel Panic 26 April 2018 в 10:45
поделиться

4 ответа

Это имя параметра, хотя и не очень полезное, но именно оно обычно используется (по некоторым соглашениям), когда вам нужно указать, что выражение имеет параметр, чтобы код скомпилировался, но вас это не особо волнует, поэтому вы просто проигнорируете его.

По сути, это эксплуатация синтаксиса для того, что представляет собой легальный идентификатор в C#, а поскольку идентификатор может начинаться с подчеркивания и не содержать ничего другого, это просто имя параметра.

Вы могли бы просто написать:

var _ = 10;
38
ответ дан 24 November 2019 в 04:01
поделиться

Это соглашение используется, когда вам не нужен параметр.

78
ответ дан 24 November 2019 в 04:01
поделиться

_ - это допустимое имя переменной. Они просто используют _ в качестве переменной.

28
ответ дан 24 November 2019 в 04:01
поделиться

Поскольку выражение лямда в основном используется в коротком анонимном коде, так что имя переменной иногда не является необходимым, даже они не используют переменную в блоке кода, так что они просто дают _ для короткого, условного

9
ответ дан 24 November 2019 в 04:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: