Skip to content

Become a Better Programmer!

Receive regular tips about Java programming, algorithms and data structures!

Java Switch Expression

February 2, 2022Switch Expressions in Java 14: Compact by arrow notation without “break” – Returning values with “yield” – Completeness analysis for enums.

Generating Random Numbers in Java

January 31, 2022How to generate random numbers in Java? How do Math.random() and Random work? What are pseudorandom numbers? Can they be predicted?

Java Text Blocks

January 19, 2022Text blocks are a notation for multiline strings in Java. Why do we need them? How to write and format them? Which escape sequences must we use?

Java substring() Method

January 17, 2022How to use Java’s String.substring() method? How does substring() work internally, and how has the implementation changed over time?

Sealed Classes in Java

December 28, 2021What are sealed classes and interfaces in Java? How exactly do they work? And why would we want to restrict a class hierarchy’s extensibility?

Java 17 Features (with Examples)

December 28, 2021The new features of Java 17 (LTS) with examples: Sealed Classes, InstantSource, HexFormat, context-specific deserialization filters, and more...

Java Records (with Examples)

December 8, 2021What are Java Records? What do we need them for? How to implement + use them? How to extend them with functionality? What about inheritance?

Java 16 Features (with Examples)

December 8, 2021The new features of Java 16 with examples: “Pattern Matching for instanceof”, Records, Value-Based Classes, Strong Encapsulation, and more...

Java 15 Features (with Examples)

November 23, 2021All the new features of Java 15 with examples: Text Blocks, ZGC + Shenandoah, new String methods, Sealed Classes (preview), and more...

Java 14 Features (with Examples)

November 15, 2021Java 14 features with examples: Switch Expressions, Helpful NullPointerExceptions, Previews: Records + Pattern matching for instanceof + more.

Java 13 Features (with Examples)

November 8, 2021All new features of Java 13 with examples: Switch Expressions (2nd Preview), Text Blocks (Preview), Dynamic CDS Archives, and more...

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

Search