Blog Archives
1 2

01: 19 Java 8 Functional Programming (FP) Interview Q&As

Java 8 Functional Programming Interview questions focusing on FP. Getting a good handle on Java OOP concepts and FP concepts are very important NOT only from writing quality code perspective, but also from job interviews perspective to be able to do well in written tests & technical interviews.

Read more ›


02: Java 8 Streams, lambdas, intermediate vs terminal ops, and lazy loading with simple examples

A stream is an infinite sequence of consumable elements (i.e a data structure) for the consumption of an operation or iteration. Any Collection<T> can be exposed as a stream. It looks complex, but once you get it, it is very simple. The operations you perform on a stream can either...


03: Java Functional interfaces and Lambda expressions Q&As

The functional interfaces and Lambda expressions are going to make your code concise when coding with Java 8. These are the most awaited features among Java developers. If you understand the following examples, you will know what a lambda expression is & … Read more ›...

04: Convert Lists to Maps and Maps to Lists with Java 8 power

Why convert from a list to a map? Maps allow you to store and access data by a “KEY”. Lists only allow you to access data by either index or by looping through the whole list to find a value that you are interested in. … Read more ›...

05: 9 Java Functional programming examples in wrangling normal & big data

This post extends Transforming your thinking from OOP to FP. In Big-data, functional programming is prevalent when working with data sets. For example, writing a Spark job to work with RDDs (Resilient Distributed Data sets). In Imperative (E.g. OOP, procedural programming, etc) programming you can say where you are assigning...

05: Finding the 2nd highest number in an array in Java

Requirements gathering

  1. Does the array allow duplicates?
  2. If duplicates are allowed, then do you need to report duplicates? For example, in {2,4, 6, 3, 6, 5}, is 6 or 5 the second highest?


  • If duplicates are not allowed, sort the array (Arrays.sort(…)) and get the second last element,

Read more ›


06: Java 8 way of File reading and functionally processing the data


#1 double colon notation ::

The new double colon (::) operator that Java 8 has to convert a normal method into lambda expression. So,

Instead of:

You can do:

#2 Why is stream::iterator used?

Read more ›


06: Understanding TimeZones with Java 8 examples

What is UTC? which stands for Coordinated Universal Time. The diagram below shows the standard time offsets of different countries. Some places observe daylight saving time (DST) during their respective summer periods. For example,

Los Angeles (i.e LA) UTC –

Read more ›

07: Java 8 API examples using lambda expressions and functional programming

Java 8 API examples using lambda expressions and functional programming. Example 1: The java.lang.Runnable interface has been made a functional interface. Output: main thread: main worker thread: Thread-0 worker thread: Thread-1 Example 2: The java.util.function package has a number of functional interfaces. … Read more ›...

08: Write code to add, subtract, multiply, and divide given numbers?

A trivial coding example (i.e. a Calculator) tackled using the following programming paradigms in Java not only to perform well in coding interviews, but also to learn these programming paradigms.

Approach 1: Procedural Programming
Approaches 2 – 4: Object Oriented Programming
Approach 5: Functional Programming (Java 8)

Approach 1: Procedural

Output: result=13

Approach 2: OOP

When you have more mathematical operations,

Read more ›

10: ExecutorService Vs Fork/Join & Future Vs CompletableFuture Interview Q&As

Q1. What is the difference between “ExecutorService” and “Fork/Join Framework“?
A1. The Fork/Join framework uses a special kind of thread pool known as the ForkJoinPool, which is a specialized implementation of ExecutorService implementing the 1) work-stealing algorithm,

Read more ›

5 FAQs on transforming your thinking from OOP to FP

Functional Programming (i.e. FP) is prevalent in Big Data (i.e. Spark programming, etc) roles. A must know for Big Data Engineers and Analysts.

One needs to get used to the transformation from imperative programming to functional programming. You like it or not,

Read more ›

Fibonacci number with caching and Java 8 FP

Complimenting Fibonacci number coding – iterative and recursive approach, we can improve performance by caching. If you run this Output and you can see “fibonacci(3)” is repeated 2 times, “fibonacci(2)” is repeated 3 times, and so on. If you pick a larger number like 21, … Read more ›...

Java 8 Functional Programming interview questions on currying

Currying (named after Haskell Curry) is the fact of evaluating function arguments one by one, producing a new function with one argument less on each step. Java 8 still does not have first class functions, but currying is “practically” possible with verbose type signatures, … Read more ›...

Java 8 String streams and finding the first non repeated character with functional programming

Q1.Find the first non repeated character in a given string input using Java 8 or later?
A1.Extends Find the first non repeated character in a given string input with Java 8 functional programming.

For example, an input string of “stress”

Read more ›


Java 8 using the Predicate functional interface

The java.util.function package in Java 8 has a number of functional interfaces. Let’s look at the Predicate interface that is used for filtering objects from a collection. Here is the Java 8 example: Step 1: Create a Driver domain class using the builder design pattern. … Read more ›...

Java 8: 7 useful miscellaneous additions you must know

The much awaited addition in Java 8 are Lambda expressions to be used in functional programming and default and static methods in interfaces to support multiple behavior inheritance and helper methods. Here are a few other additional handy additions in Java 8. Addition #1: String.join( ) method, … Read more...

Java 8: Different ways to sort a collection of objects in pre and post Java 8

The object we are going to sort is a Person. Option 1: Writing your own Comparator implementation. This can be done as an anonymous inner class instead of a separate class. The test class Option 2: The Option 1 is not bad, … Read more ›...

Java 8: Does “Optional” class alleviate the pain of ubiquitous NullpointerException?

The most prevalent runtime exception (aka unchecked) exception in Java is the NullPointerException. You need to code defensively to avoid NullPointerException as shown below. Later, we will see how the class java.util.Optional that was introduced in Java 8 will alleviate this problem to some extent. … Read more ›...

Learning to write functional programming with Java 8 with examples

Scenario 1:  The Operation interface with the annotation @FunctionalInterface. This annotation ensures that you can only have a single abstract method. You can have additional default and static method implementations. Step 1: Define the interface. … Read more ›...

1 2

300+ Java & Big Data Interview FAQs

Java & Big Data Tutorials