Re: Легко ли читается method reference вместо lambda?
От: StanislavK Великобритания  
Дата: 28.09.22 08:29
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Меня очень раздражает синтаксис method reference (где ::). Я решительно не понимаю, зачем он нужен и на мой взгляд он ухудшает читаемость кода. Хотелось бы услышать стороннее мнение. Приведу несколько фрагментов кода.

Получается сильно компактнее, когда есть параметры.

    public static void sample() {
        fooConsumer(Bar::intConsumer);
    }
    
    interface Foo {
        void foo(int i1, int i2, int i3, int i4);
    }
    
    public static void fooConsumer(Foo foo) {
        
    }
    
    public static void intConsumer(int i1, int i2, int i3, int i4) {
        
    }


vsb>Я предполагаю, что method reference может компилироваться в незначительно более быстрый код, но уверен, что разница неизмерима на практике.

Как и многое в java — это зависит от ситуации. Например в этом случае компилятор может точно определить, что не нужно на каждый вызов создавать лямбду.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.