Почему один символ подчеркивания является недопустимым именем для параметра лямбда?
Я попытался назвать лямбда-параметр_
например, (урезанная версия):
Consumer<Object> c = _ -> {};
как я хотел показать, что параметр игнорируется, но я получил следующую ошибку компилятора:
использование «_» в качестве идентификатора запрещено для лямбда-параметров
Это было для меня сюрпризом. Что интересно,два подчеркивает в порядке:
Consumer<Object> c = __ -> {}; // no compile error
Так что это не символ подчеркивания в целом, а один.
Почему одно подчеркивание запрещено?