Back to home

Java Lambda Functions

Published: Feb 5, 2019

Last updated: Feb 5, 2019

    The basic gist is to generate a interface with the lambda signature, then explicitly create a function preface by the interface type.

    This will allow you to call the lambda function as a instance method.


    // src/main/java/ interface Anon { String helloWorld(); } interface AnonInt { int sum(int a, int b); } class Lambda { String hello() { Anon anon = () -> "Hello, World!"; return anon.helloWorld(); } int sumOnePlusTwo() { AnonInt anon = (int a, int b) -> a + b; return anon.sum(1, 2); } }

    As for the test file:

    // src/tests/java/ import org.junit.Ignore; import org.junit.Test; import static org.junit.Assert.assertEquals; public class LambdaTest { @Test public void testLambda() { assertEquals("Hello, World!", new Lambda().hello()); } @Test public void testLambdaSum() { assertEquals(3, new Lambda().sumOnePlusTwo()); } }

    Personal image

    Dennis O'Keeffe

    • Melbourne, Australia

    Hi, I am a professional Software Engineer. Formerly of Culture Amp, UsabilityHub, Present Company and NightGuru.
    I am currently working on Visibuild.


    Get fresh posts + news direct to your inbox.

    No spam. We only send you relevant content.

    Java Lambda Functions


    Share this post