

{"id":17244,"date":"2018-06-02T04:10:23","date_gmt":"2018-06-02T04:10:23","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=17244"},"modified":"2026-05-22T18:11:58","modified_gmt":"2026-05-22T12:41:58","slug":"java-functional-interface","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/","title":{"rendered":"Java Functional Interface | Lambda Expression in Java"},"content":{"rendered":"<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:1892,&quot;href&quot;:&quot;https:\\\/\\\/www.oracle.com\\\/in\\\/java\\\/index.html&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20180309182901\\\/https:\\\/\\\/www.oracle.com\\\/in\\\/java\\\/index.html&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-10 06:58:27&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-14 08:15:54&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-23 01:57:16&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-29 01:19:47&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-02 23:36:00&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-06 06:22:14&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-12 06:21:18&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-15 12:15:57&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-25 12:34:15&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-02 15:49:19&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-09 12:30:57&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-13 10:51:51&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-26 10:36:53&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-02 04:16:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-05 09:34:50&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-09 07:51:38&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-14 06:56:16&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-17 17:15:41&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-23 03:11:32&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-28 14:33:25&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-02 05:56:29&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-06 15:00:44&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-09 19:26:12&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-15 15:14:38&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-22 14:49:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-28 14:05:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-08 06:18:41&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-11 07:09:04&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-14 19:30:32&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-05-18 11:05:18&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-26 06:56:11&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-30 09:54:37&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-12 18:01:18&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-06-12 18:01:18&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;}]'><\/div>\n<p>The last session was all about\u00a0<a href=\"https:\/\/data-flair.training\/blogs\/java-iterator\/\" target=\"_blank\" rel=\"noopener\"><strong>Java Iterator<\/strong><\/a>, and this is a new turn in our learning called Java Functional Interface. In this tutorial, we are going to learn about Java functional interfaces and the @FunctionalInterface <strong><a href=\"https:\/\/data-flair.training\/blogs\/java-annotations\/\" target=\"_blank\" rel=\"noopener\">Annotation in Java<\/a><\/strong>. In the @FunctionalInterface Annotation, we will discuss Java.util.function package and its examples. Along with this, we will discuss Lambda Expression in the Java programming language.<\/p>\n<p>So, let&#8217;s start with Java Functional Interface.<\/p>\n<div id=\"attachment_17261\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-17261\" class=\"wp-image-17261 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg\" alt=\"Java Functional Interface | Lambda Expression in Java\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01-150x79.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01-300x157.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01-768x402.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01-1024x536.jpg 1024w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-17261\" class=\"wp-caption-text\">Java Functional Interface | Lambda Expression in Java<\/p><\/div>\n<h3>Java Functional InterfaceA<\/h3>\n<ul>\n<li><em>Java functional interface<\/em> is an interface that has one abstract method, and it can display only one functionality.<\/li>\n<li><em>Lambda expression<\/em>\u00a0in Java is used to represent a functional interface or an interface since Java 8.<\/li>\n<\/ul>\n<p><strong>Characteristics of Functional Interface in Java:<\/strong><\/p>\n<ul>\n<li>A functional interface in Java can have various static or default methods.<\/li>\n<li>The abstract method present in the interface can override the other method available.<\/li>\n<li>It has an annotation that checks if there is more than one abstract method present in the interface.<\/li>\n<\/ul>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/interface-in-java\/\" target=\"_blank\" rel=\"noopener\">Do you know what an interface is in Java?\u00a0<\/a><\/strong><\/p>\n<p><strong>Java Functional Interface Example 1-<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">class Test\r\n{\r\npublic static void main(String args[])\r\n{\r\nnew Thread(new Runnable()\r\n{\r\n@Override\r\npublic void run()\r\n{\r\nSystem.out.println(\"New thread created\");\r\n}\r\n}).start();\r\n}\r\n}\/\/ we had to create anonymous inner classes before Java 8<\/pre>\n<p><strong>Java Functional Interface Example 2-<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">\/\/ use of Lambda expressions\r\nclass Test\r\n{\r\npublic static void main(String args[])\r\n{\r\n\/\/ lambda expression\r\nnew Thread(()-&gt;\r\n{System.out.println(\"New thread created\");}).start();\r\n}\r\n}\r\n<\/pre>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/serialization-and-deserialization-in-java\/\" target=\"_blank\" rel=\"noopener\">Let&#8217;s Define Serialization and Deserialization in Java in Detail<\/a><\/strong><\/p>\n<h3>@FunctionalInterface Annotation in Java<\/h3>\n<p>@FunctionalInterface annotation is employed to make sure that the functional interface does not have over one abstract method. Just in case over one abstract method is present, the compiler flags an \u2018Unexpected @FunctionalInterface annotation\u2019 message. However, it&#8217;s not necessary to use this annotation.<\/p>\n<p><strong>Example of\u00a0 @FunctionalInterface Annotation in Java \u2013<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">@FunctionalInterface\r\ninterface Square\r\n{\r\nint calculate(int x);\r\n}\r\nclass Test\r\n{\r\npublic static void main(String args[])\r\n{\r\nint a = 5;\r\nSquare s = (int x)-&gt;x*x;\r\nint ans = s.calculate(a);\r\nSystem.out.println(ans);\r\n}\r\n}<\/pre>\n<h4>java.util.function Package<\/h4>\n<p>The java.util.function package in Java 8 contains many built-in functional interfaces, such as-<\/p>\n<p><strong>Predicate:<\/strong> An abstract method test that gives a Boolean value as a result of the specified argument.<\/p>\n<pre class=\"EnlighterJSRAW\">public Predicate\r\n{\r\npublic boolean test(T t);\r\n}<\/pre>\n<p><strong>Binary operator:<\/strong> An abstract method that returns two values and returns the same type.<\/p>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/abstract-data-type-adt\/\" target=\"_blank\" rel=\"noopener\">Read about Java Abstract Data Type in Data Structure \u2013 ADT<\/a><\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">public interface BinaryOperator\r\n{\r\npublic T apply(T x, T y);\r\n}<\/pre>\n<p><strong>Function:<\/strong> An abstract datatype that takes the type T and returns type R.<\/p>\n<pre class=\"EnlighterJSRAW\">public interface Function\r\n{\r\npublic R apply(T t);\r\n}<\/pre>\n<p><strong>Example of java.util.function Package \u2013<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">import java.util.*;\r\nimport java.util.function.Predicate;\r\nclass Test\r\n{\r\npublic static void main(String args[])\r\n{\r\nList&lt;String&gt; names =\r\nArrays.asList(\"Falir\",\"FalirQuiz\",\"g1\",\"QA\",\"Flair22\");\r\nPredicate&lt;String&gt; p = (s)-&gt;s.startsWith(\"G\");\r\nfor (String st:names)\r\n{\r\nif (p.test(st))\r\nSystem.out.println(st);\r\n}\r\n}\r\n}<\/pre>\n<h3>Lambda Expression in Java 8<\/h3>\n<p>Java Lambda expressions primarily express instances of purposeful interfaces (An interface with single abstract methodology is named Java functional interface. An example is java.lang.Runnable). However, the Lambda expressions in Java implement the sole abstract function and so implement functional interfaces.<\/p>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/java-regular-expression\/\" target=\"_blank\" rel=\"noopener\">Let&#8217;s discuss Java Regular Expression (Java Regex) with Examples<\/a><\/strong><\/p>\n<p>Lambda expressions are a side in Java eight and supply below functionalities. Enable treating functionality as a method argument, or code as data.<\/p>\n<p>A function that may be created while not belonging to any class. A Java lambda expression will be passed around as if it were an object and executed on demand.<\/p>\n<pre class=\"EnlighterJSRAW\">interface FuncInterface\r\n{\r\nvoid abstractFun(int x);\r\ndefault void normalFun()\r\n{\r\nSystem.out.println(\"Hello\");\r\n}\r\n}\r\nclass Test\r\n{\r\npublic static void main(String args[])\r\n{\r\nFuncInterface fobj = (int x)-&gt;System.out.println(2*x);\r\nfobj.abstractFun(5);\r\n}\r\n}\r\n<\/pre>\n<div id=\"attachment_17262\" style=\"width: 1312px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-17262\" class=\"wp-image-17262 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression.jpg\" alt=\"\" width=\"1302\" height=\"334\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression.jpg 1302w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression-150x38.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression-300x77.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression-768x197.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/lambda-expression-1024x263.jpg 1024w\" sizes=\"auto, (max-width: 1302px) 100vw, 1302px\" \/><\/a><p id=\"caption-attachment-17262\" class=\"wp-caption-text\">Lambda Expression in Java 8<\/p><\/div>\n<p><strong>Java Lambda Expression Syntax \u2013<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">lambda operator -&gt; body<\/pre>\n<p>Where lambda operator can be:<\/p>\n<p><strong>Zero Parameter<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">() -&gt; System.out.println(\"Zero parameter lambda\");<\/pre>\n<p><strong>One Parameter<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">(p) -&gt; System.out.println(\"One parameter: \" + p);\r\n<\/pre>\n<p><strong>Multiple Parameters<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">(p1, p2) -&gt; System.out.println(\"Multiple parameters: \" + p1 + \", \" + p2);\r\n<\/pre>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/multithreading-in-java\/\" target=\"_blank\" rel=\"noopener\">Do you know What is Multithreading in Java\u00a0<\/a><\/strong><\/p>\n<p><strong>Example of Java Lambda expression\u2013<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\">import java.util.ArrayList;\r\nclass Test\r\n{\r\npublic static void main(String args[])\r\n{\r\nArrayList&lt;Integer&gt; arrL = new ArrayList&lt;Integer&gt;();\r\narrL.add(1);\r\narrL.add(2);\r\narrL.add(3);\r\narrL.add(4);\r\narrL.forEach(n -&gt; System.out.println(n));\r\narrL.forEach(n -&gt; { if (n%2 == 0) System.out.println(n); });\r\n}\r\n}<\/pre>\n<p><strong>Output-<\/strong><br \/>\n1<br \/>\n2<br \/>\n3<br \/>\n4<br \/>\n2<br \/>\n4<\/p>\n<p>Therefore, A Java program to demonstrate the working of a Java lambda expression with two arguments.<\/p>\n<pre class=\"EnlighterJSRAW\">public class Test\r\n{\r\ninterface FuncInter1\r\n{\r\nint operation(int a, int b);\r\n}\r\ninterface FuncInter2\r\n{\r\nvoid sayMessage(String message);\r\n}\r\nprivate int operate(int a, int b, FuncInter1 fobj)\r\n{\r\nreturn fobj.operation(a, b);\r\n}\r\npublic static void main(String args[])\r\n{\r\nFuncInter1 add = (int x, int y) -&gt; x + y;\r\nFuncInter1 multiply = (int x, int y) -&gt; x * y;\r\nTest tobj = new Test();\r\nSystem.out.println(\"Addition is \" +\r\ntobj.operate(6, 3, add));\r\nSystem.out.println(\"Multiplication is \" +\r\ntobj.operate(6, 3, multiply));\r\nFuncInter2 fobj = message -&gt;System.out.println(\"Hello \"\r\n+ message);\r\nfobj.sayMessage(\u201cflair\");\r\n}\r\n}<\/pre>\n<p><strong>Output-<\/strong><br \/>\nAddition is 9<br \/>\nMultiplication is 18<br \/>\nHello flair<\/p>\n<p><strong><a href=\"https:\/\/data-flair.training\/blogs\/java-comments\/\" target=\"_blank\" rel=\"noopener\">Let&#8217;s explore Three Types of Comments in Java<\/a><\/strong><\/p>\n<p>So, this was all about\u00a0Java Functional Interface Tutorial. Hope you like our explanation of Java Lambda Expression.<\/p>\n<h3>Conclusion<\/h3>\n<p>Hence, in this Java Functional Interface tutorial, we learned about functional interfaces in Java with examples. In addition, we discussed Java Lambda expressions and @FunctionalInterface Annotation in Java, in which we cover java.util.function Package. Furthermore, if you have any queries regarding Java Functional Interface, feel free to ask in the comment section.<\/p>\n<p>Related Topic-\u00a0<strong><a href=\"https:\/\/data-flair.training\/blogs\/checked-and-unchecked-exceptions-in-java\/\" target=\"_blank\" rel=\"noopener\">Checked vs Unchecked Exceptions in Java<\/a> <\/strong><\/p>\n<p><strong><a href=\"https:\/\/www.oracle.com\/in\/java\/index.html\" target=\"_blank\" rel=\"noopener\">For reference<\/a><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The last session was all about\u00a0Java Iterator, and this is a new turn in our learning called Java Functional Interface. In this tutorial, we are going to learn about Java functional interfaces and the&#46;&#46;&#46;<\/p>\n","protected":false},"author":5,"featured_media":17261,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32],"tags":[117,4269,4971,7346,7515,7572,7751,8067],"class_list":["post-17244","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-functionalinterface-annotation-in-java","tag-example-of-functional-interface-in-java","tag-functional-interface-in-java-example","tag-java-functionalinterface-annotation","tag-java-functional-interface-example","tag-java-lambda-expression","tag-java-util-function-package","tag-lambda-expression-in-java-8"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Java Functional Interface | Lambda Expression in Java - DataFlair<\/title>\n<meta name=\"description\" content=\"Learn what is Functional Interface in Java, Java Lambda Expression,@FunctionalInterface Annotation, java.util.function Package\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/java-functional-interface\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java Functional Interface | Lambda Expression in Java - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Learn what is Functional Interface in Java, Java Lambda Expression,@FunctionalInterface Annotation, java.util.function Package\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/java-functional-interface\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-02T04:10:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-22T12:41:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Java Functional Interface | Lambda Expression in Java - DataFlair","description":"Learn what is Functional Interface in Java, Java Lambda Expression,@FunctionalInterface Annotation, java.util.function Package","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/","og_locale":"en_US","og_type":"article","og_title":"Java Functional Interface | Lambda Expression in Java - DataFlair","og_description":"Learn what is Functional Interface in Java, Java Lambda Expression,@FunctionalInterface Annotation, java.util.function Package","og_url":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-06-02T04:10:23+00:00","article_modified_time":"2026-05-22T12:41:58+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823"},"headline":"Java Functional Interface | Lambda Expression in Java","datePublished":"2018-06-02T04:10:23+00:00","dateModified":"2026-05-22T12:41:58+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/"},"wordCount":606,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg","keywords":["@FunctionalInterface Annotation in Java","Example of Functional Interface in Java","Functional Interface in Java Example","Java @FunctionalInterface Annotation","Java Functional Interface Example","Java Lambda Expression","java.util.function Package","Lambda Expression in Java 8"],"articleSection":["Java Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/java-functional-interface\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/","url":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/","name":"Java Functional Interface | Lambda Expression in Java - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg","datePublished":"2018-06-02T04:10:23+00:00","dateModified":"2026-05-22T12:41:58+00:00","description":"Learn what is Functional Interface in Java, Java Lambda Expression,@FunctionalInterface Annotation, java.util.function Package","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/java-functional-interface\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/05\/Java-Functional-Interface-01.jpg","width":1200,"height":628,"caption":"Java Functional Interface"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/java-functional-interface\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Java Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/java\/"},{"@type":"ListItem","position":3,"name":"Java Functional Interface | Lambda Expression in Java"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team creates expert-level guides on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our goal is to empower learners with easy-to-understand content. Explore our resources for career growth and practical learning.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam1\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/17244","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=17244"}],"version-history":[{"count":12,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/17244\/revisions"}],"predecessor-version":[{"id":148428,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/17244\/revisions\/148428"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/17261"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=17244"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=17244"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=17244"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}