Functional Programming in Java


Functional programming is a style of computing without state change effects. Similar to mathematics function execution, such a programming is easier to maintain and understand as you don't have to think what will happen with state of executed object. In Java FP became popular thanks to Java 8 additions (streams), but this paradigm was available in Java even earlier - see books section below.



  • "Java 8 Lambdas: Functional Programming For The Masses", Richard Warburton
  • "Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions", Venkat Subramaniam
  • "Functional Programming for Java Developers", Dean Wampler
  • "Java 8 in Action: Lambdas, Streams, and functional-style programming", Raoul-Gabriel Urma
  • "Mastering Lambdas: Java Programming in a Multicore World", Maurice Naftalin
  • "Functional Programming in Java", Pierre-Yves Saumont


See also