CodesJava

Easy learning with example program codes

java 8 lambda expression filter on a list


Lambda expression is used to provide the implementation of functional interface. A Functional Interface is an interface with only single abstract method. In case of lambda expression, we don’t need to define the method again for providing the implementation so it saves lots of coding efforts.

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.codesjava;
 
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Stream;
 
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[]){
	List<Student> list=new ArrayList<Student>();  
 
        //Adding Students  
        list.add(new Student(1,"Nidhi"));  
        list.add(new Student(3,"Parbhjot"));  
        list.add(new Student(2,"Amani"));  
 
        // using lambda to filter data  
        Stream<Student> filtered_data = list.stream().filter(s -> s.rollNo > 2);  
 
        // using lambda to iterate through collection  
        filtered_data.forEach(  
                student -> System.out.println(student.name)  
        );  
   }
}

Output

Parbhjot


Copyright © 2018 CodesJava DMCA.com Protection Status SiteMap