java 8 lambda expression comparator

Lambda expression is used to provide the implementation of functional interface.

Java Lambda Expression Syntax

(argument-list) -> {function-body}  

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.


package com.w3schools360;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

class Student{
	int rollNo;
	String name;
	public Student(int rollNo, String name){
        this.rollNo = rollNo;  = name;  

public class LambdaExpressionExample {
   public static void main(String args[]){
	List list=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  
        for(Student student:list){  
            System.out.println(student.rollNo+" ";  


Sorting on the basis of name...
2 Amani
1 Nidhi
3 Parbhjot