Lambda expression is used to provide the implementation of functional interface.
Java Lambda Expression Syntax
(argument-list) -> {function-body}
Where:
Argument-list: It can be empty or non-empty as well.
Arrow notation/lambda notation: It is used to link arguments-list and body of expression.
Function-body: It contains expressions and statements for lambda expression.
Example
package com.w3schools; import java.util.ArrayList; import java.util.Collections; import java.util.List; class Student{ int rollNo; String name; public Student(int rollNo, String name){ super(); this.rollNo = rollNo; this.name = name; } } public class LambdaExpressionExample { public static void main(String args[]){ Listlist=new ArrayList (); //Adding Students list.add(new Student(1,"Nidhi")); list.add(new Student(3,"Parbhjot")); list.add(new Student(2,"Amani")); System.out.println("Sorting on the basis of name..."); // implementing lambda expression Collections.sort(list,(p1,p2)->{ return p1.name.compareTo(p2.name); }); for(Student student:list){ System.out.println(student.rollNo+" "+student.name); } } }
Output
Sorting on the basis of name... 2 Amani 1 Nidhi 3 Parbhjot