Skip to content

A Java project demonstrating functional programming concepts using modern Java features such as Lambdas, Streams, Optionals, Functional Interfaces (Consumer, Function, Predicate, Supplier), and the Combinator pattern. Includes practical examples and a comparison with imperative programming.

Notifications You must be signed in to change notification settings

Awadhesh-Gupta/JavaFunctionalProgramming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Java Functional Programming Practice

This repository is a collection of Java functional programming examples and practice code.
It is not a full project, but rather a set of small programs exploring different functional concepts in Java.


πŸ“Œ Contents

  • Imperative vs Functional Style
  • Functional Interfaces
    • Consumer
    • Function
    • Predicate
    • Supplier
  • Lambdas
  • Optionals
  • Streams API
  • Callbacks (JavaScript-style)
  • Combinator Pattern (building validators)

πŸ“‚ Structure

The repository is organized into packages: src/main/java/ β”œβ”€β”€ FinalSection/ # Lambdas & callbacks β”œβ”€β”€ FunctionalProgramming/ # Core functional interfaces β”œβ”€β”€ Imperative/ # Imperative style examples β”œβ”€β”€ Optionals/ # Optional usage β”œβ”€β”€ combinatorpattern/ # Validator with combinator pattern β”œβ”€β”€ org/Awadhesh/ # Practice main file └── streams/ # Streams API


πŸš€ Usage

  1. Clone the repository:

    git clone https://github.com/<Awadhesh-Gupta>/JavaFunctionalProgramming.git
    
  2. Open in IntelliJ IDEA (or any IDE).

  3. Run individual classes (Main.java) to explore examples.

πŸ“– Note

This repo is meant only for practice and learning. It is not a production-ready project.

About

A Java project demonstrating functional programming concepts using modern Java features such as Lambdas, Streams, Optionals, Functional Interfaces (Consumer, Function, Predicate, Supplier), and the Combinator pattern. Includes practical examples and a comparison with imperative programming.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages