Course in Java Skill Tree

Java Programming Exercises

Practice Java programming through 200+ hands-on coding challenges. Perfect for beginners to advance their skills with real-world projects covering data structures, algorithms, OOP, and core Java concepts.

Java

Syllabus

Accessing Elements in a LinkedList

Accessing Elements of a HashMap

Accessing Static Properties from Another Class

Checking String Equality

Create Linked List with Index

Finding Minimum and Maximum Student Marks

Implement Deque Data Structure

Implementing Lambda Expression with Parameters

Implementing Multilevel Inheritance

Remove Second Element From ArrayList

Sort Players' Ages Ascending Order

Class Methods Retriever Information

Concurrent Execution of Threads

Counting Character Occurrences

Custom Regular Expression

Data Sharing Problem in Ticketing System

Default Methods in Multiple Interfaces

Draw Geometric Shapes

From One-Fourth to 0

Implementing Queue Manually

Lambda Expressions For Data Operations

Matrix element information printing

Remove Duplicate Numbers

Set a price for attractions tickets

Sibling Money Division Game

Simulating a Library

Solving Apple Distribution Problem with Exceptions

Storing Data Information Using HashSet

Sum of Large Numbers

Sum of Three-Digit Number's Digits

The Only God

Usage of Stream

Validating ID Card Number

Simple Java Print Statement

Implement Encryption and Decryption

Access and Modify Student Name

Accessing Overridden Method of Superclass

Accessing Static Properties in a Class

Accessing Superclass Constructor

Adding Elements to ArrayList

Adding Elements to ArrayLists at Specific Index

Area Calculation Program using Abstraction

Calculate BMI Using Weight and Height

Calculate Cube Volume From Side

Calculate Employee Bonus Based Salary

Calculate Interest Based on Principal

Calculate Mean Height of Players

Calculate Percentage with Arrays

Calculate Rectangle Area Using Class

Calculate Rectangle Dimensions

Calculate Sum of Digits

Calculate the Factorial of a Number

Calculating Area of Two Triangles

Calculating Power of a Number

Calculating Standard Deviation in Java

Calculating Sum of Natural Numbers

Calculating the Area of a Circle

Calculating the Area of a Square

Calling a Method Twice

Check Pass, Fail, or Invalid

Checking IcyHot Temperature Using Java

Comparing First and Last Array Elements

Continuously Sum Entered Numbers

Convert Between Kilometers and Miles Using Java

Count the Vowels in a String

Counting Digits In An Integer

Counting Occurrences of Character 'a'

Create a Calculator Program

Creating Enum Class - Size

Creating an Animal-Dog Hierarchy

Determine Factors of a Number

Determine Longer String From Inputs

Determine Maximum Handshakes Among Students

Determine Student Grade

Determining Equality of Two Arguments

Determining Even or Odd

Determining Harshad Number in Java

Determining If a Number is Armstrong

Determining Prime Number Status

Distribute Chocolates To Children

Encapsulating Employee Salary Management

Enum Constants as Strings

Exclude Multiples of Three from Numbers

Fahrenheit to Celsius Conversion Program

Find Differences Between Two Hashsets

Find Intersection of Two HashSets

Find Largest Multiple Less Than 100

Find Smallest Array Element

Find Youngest Brother

Finding Nemo in ArrayList

Finding Prime Numbers in Intervals

Finding the GCD of Two Numbers

Finding the Lowest Common Multiple

FizzBuzz Program: User Input Explanation

Generate Multiplication Table Using Loops

Greatest Factor Excluding Itself

Identify Self-Dividing Numbers

Identifying Abundant Numbers Using Java

Implement Interface to Calculate Square Area

Implementing a Queue Using a LinkedList

Method Overloading for Different Parameters

Method Overloading with Different Parameter Types

Modify Elements in HashMap

Modifying an ArrayList with Java

Multiple Class Method Overriding

Multiple Classes Inheriting a Class

Multiply Array By Ten

Overload Final Method Demonstration

Overriding Parent Class Method

Palindrome Number Check

Perform Complex Number Addition

Pound to Kilogram Conversion Program

Primitive Types to Wrapper Classes

Print Any Type of Data

Print Even Numbers from Array

Print Non-Alphabet Characters

Print Value of Any Data Type

Printing Array Elements

Printing Individual Characters in a String

Printing a Sentence Three Times

Removing Elements from a HashMap

Reverse a Number Program

Shop Profit/Loss Calculator

Simple Interest Calculation Program

String Concatenation: Two Texts Combined

String Conversion: First Letter Uppercase

Subtraction of Coordinates

Swapping Two Numbers with Temp

Valid Internal Angles of Triangle

Validate Leap Year Condition

Verify Prime Number Status Using Java

Verifying Class Instance

Voting Eligibility Determination Program

Airplane Battle Game

Alien Cell Fission

Area of Circle with Any Radius

Automotive Sales Market

Bank Account Program

Blossoms Compete for Beauty

Building and Deploying Spring Boot

Business Card Distribution

Caesar Cipher Encryption

Calculating the Volume of a Cube

Calculating the Volume of a Cylinder

Chat Room Simulation

Class Grade Ranking

Class Properties and Methods

Classify Words by Parts of Speech

Coexisting Chicken and Rabbit Cage

Configuration File Content

Configuring Class Parameters with Annotations

Counting the Occurrences of a Substring

Define Your Annotations

Design and Implementation of Graphic Interface

Design and Implementation of Multiple Interfaces

Determine Spaceship Return Feasibility

Determine Triangle Feasibility with Exception Handling

Dining Philosophers Synchronization

Displaying Data Information Using Iterator

Divide Apples with Exception Handling

Efficient Student Grade Analysis Program

Enter student information

Enum Class for Gender Information

Fibonacci Sequence Programming

File Content Filtering

File Upload Based on UDP Protocol

Flow Control Statements for Multiple Requirements

Fun Code Completion

Get Information from Google Homepage

Handling Incorrect Grades

Hello LabEx Using Java

How Many Days in Each Month

Implement Countdown Timer Thread

Implement a Stock class

Implementing Pascal's Triangle

Implementing String Split

Implementing String Utility Class

Intelligent Care Call Service

Intersection of Linked Lists

Java Engineer Salary Calculation

Kong Rong's Generosity

Landlord Card Game Simulation Using Java

Launching Wayne's Automated Height Calculation

Log Information Classification

Love at First Sight

Maximize Aeroplane Chess Score Using Dynamic Programming

Maximize Airplane Destruction Strategy

Maximum value of three numbers.

Modify Weapon Design Using Inheritance

Narcissistic Number Judgment

Navigating Space Bridge with Java Arrays

No Money Jewelry Store Marketing

Number of Palindromic Numbers

Nüwa Creates Humans

Obtaining Class Objects of Different Classes

Operations with Method References

Optimal Coin Selection for Spring Purchase

Optimizing Threaded Relay Race Simulation

Output a Triangle

Outputting Book Info

Parsing XML Data Information with DOM

Point Inside a Triangle

Producer-Consumer Queue Implementation

Reflectively Create A Person Object

Release Scanner Resource using finally

Rescue Princess with Conditional Execution

Reverse One-Dimensional Array in Java

Reverse Output Word List

Reverse Word Order in English Sentences

Rewriting the equals method

Running Data Alternately In Three Groups

SAX Parsing XML Data

Searching in a Two-Dimensional Array

Servlet User Information Query

Simple Student Management System

Simulated University Management System

Spaceship Speed Control

Spare Me, My Lord

Spiral Traversal of a Tree

Stair Climbing and Balance Prediction

Storing Data Information Using TreeSet

Strength Training with Accumulative Method

String Class Constructors

String Information Statistics

String class methods

Student Management System

Student Score Ranking System

Substring Occurrence Count

Summoning Elves Gameplay

The Magical Pocket

The Wall Has Ears

The Wandering Earth

The Wish of Five Cents

Understanding Constant Pool

User Registration Validation with Exceptions

Using Inheritance to Save Code

When Can I Save Enough Money

Writing Objects to File

Yin and Yang

Introduction

Strengthen Java problem-solving through a library of 239 hands-on coding challenges. The collection ranges from short syntax and arithmetic exercises to data structures, object-oriented design, files, functional APIs, concurrency, networking, and selected application technologies.

This is a non-linear practice bank, not a single guided path. You can choose tasks that match a topic you are studying, revisit weak areas, or gradually move from small console programs to more specialized exercises without completing every challenge in order.

What You Will Learn

By completing relevant challenges in this course, you will learn to:

  • Apply input, operators, conditions, loops, methods, arrays, matrices, strings, and numeric types to small programs.
  • Solve calculation, number-property, sequence, search, sorting, text-processing, and traversal problems.
  • Build and manipulate ArrayList, LinkedList, queues, deques, maps, sets, iterators, and custom data structures.
  • Model behavior with classes, encapsulation, inheritance, abstraction, interfaces, overloading, overriding, enums, and generics.
  • Use lambdas, method references, streams, annotations, reflection, and regular expressions in focused tasks.
  • Handle exceptions and work with text files, object serialization, configuration data, and DOM or SAX XML parsing.
  • Coordinate threads with shared state, synchronization, producer-consumer queues, and classic concurrency exercises.
  • Explore isolated GUI, UDP networking, servlet, HTTP, and Spring Boot scenarios as extensions beyond core Java.

Who This Course Is For

This course is for learners who already know basic Java syntax and want a large supply of independent exercises. It suits students preparing for coding practice, programmers reviewing a specific API or language feature, and intermediate learners looking for challenges beyond the introductory curriculum.

Prerequisites: You should be able to write, compile, and debug basic Java programs and understand variables, control flow, methods, classes, and arrays. More specialized challenges require the relevant background in collections, files, concurrency, networking, XML, servlets, or Spring Boot; the collection does not teach every prerequisite in sequence.

Learning environment: The 239 challenges run in course-provided Java coding environments. Most involve editing, compiling, and executing source code, while particular tasks may use files, GUI APIs, networking, servlet tooling, or Spring Boot; environment details can therefore vary by challenge.

Frequently Asked Questions

Is this really a beginner course?

The course is labeled Beginner, and many tasks practice fundamentals, but the collection also includes intermediate and specialized topics such as generics, reflection, concurrency, networking, servlets, and Spring Boot. Complete Java for Beginners first if you are new to the language.

Must I complete all 239 challenges in order?

No. The course is configured as non-orderly. Treat it as a searchable practice library and select exercises that fit your current topic and readiness.

Are these guided tutorials or independent exercises?

They are challenge-style coding tasks, not a 239-lesson walkthrough. Each task gives you a problem to implement, so the collection is most useful for applying concepts you have already studied.

Do the Spring Boot, servlet, GUI, and networking tasks teach those subjects comprehensively?

No. They are individual extension challenges within a much larger collection. For systematic framework, web, desktop, or network development, use a dedicated course after building the necessary Java foundation.

Teacher

labby
Labby
Labby is the LabEx teacher.