
Become a Better Java Developer!
Modern Java: new versions & features, performance, and JVM insights – tutorials and deep dives, clearly explained and directly applicable.


Queue Interface in Java (+ Code Examples)
April 26, 2022How to create and use a queue in Java? What methods does the Queue interface offer? Which queues exist in the JDK? With sample code!
Queue Data Structure
April 26, 2022In this tutorial, you will learn everything about the abstract data type “Queue”, enqueue and dequeue operations, using illustrative Java examples.
Java 18 Features (with Examples)
March 22, 2022The new Java 18 features with examples: UTF-8 encoding by default, @snippet tag in JavaDoc, jwebserver, Internet-address resolution SPI + more…
Reverse a Stack Using Recursion
March 16, 2022How to reverse the order of the elements in a stack using recursion (i.e., without iteration)? Tutorial with images and Java code examples.
Implement a Stack Using Queues
March 16, 2022How to implement a stack with a queue (better said: with two queues)? Tutorial with images and Java code examples.
Implement a Stack Using a Linked List
March 16, 2022How to implement a stack using a linked list? What are the advantages and disadvantages? Tutorial with images and Java code examples.
Implement a Stack Using an Array
March 16, 2022How to implement a stack based on an array in Java (without Java Collections classes)? How do you make the array grow on demand?
Stack Implementation in Java
March 16, 2022In this tutorial, you will learn how to implement a stack in Java – with an ArrayDeque, an Array, a LinkedList and a Queue.
Stack Class in Java (+ Code Examples)
March 16, 2022How to use Java’s Stack class (with an example)? Why should you stop using java.util.Stack? What are the alternatives?
Stack Data Structure
March 16, 2022In this tutorial, you will learn everything about the abstract data type “stack”, how to use it, and how to implement your own stack in Java.Want Even More Knowledge?
My blog features many articles on Java, software architecture, and performance — from foundational concepts to advanced patterns.
If you want to go deeper, check out my trainings: hands-on, easy to understand, and directly applicable to your day-to-day project work. Instead of theory, I teach principles that help you write code that is better, more maintainable, and more performant in the long run.
Explore the Java Trainings