Рубрики
Без рубрики

Что такое ссылки на методы?

Привет, ребята, сегодня пост будет коротким, я напишу о ссылках на методы. Я знаю, что это простые примеры… С тегами java, программирование, новички, функционал.

Привет, ребята, сегодня пост будет коротким, я напишу о ссылках на методы. Я знаю, что это просто для понимания, но некоторые вещи были более странными, когда я впервые их увидел, поэтому я напишу о них.

Ссылки на методы представлены в Java 8, что позволяет создавать ссылки, когда методы создаются в лямбда-выражениях, эта стратегия искала способы создания не подробного метода.

Давайте посмотрим на пример.

List list = Arrays.asList(new Person("Riot", 112), new Person("Rext", 30));

// Without method reference
list.forEach(e -> System.out.println(e));

// With lambda reference
list.forEach(System.out::println);

// Without method reference
list.stream().map(e -> e.getNumber()).forEach(e -> System.out.println(e));

// With lambda reference
list.stream().map(Person::getNumber).forEach(System.out::println);

При использовании функций lambda часто сталкивается с моментами, когда необходимо отправить единственный метод, например, filter() , map() , как в приведенном выше примере, но мы должны помнить, что когда мы используем ссылки на методы, параметры передаются непосредственно методу, с этим параметром ничего нельзя сделать.

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

Оригинал: “https://dev.to/wagnernegrao/what-are-method-references-3ng”