Prepare Interview

Exams Attended

Mock Exams

Make Homepage

Bookmark this page

Subscribe Email Address

Difference between Java 12 and Java 13

Java 12 Java 13
Features Added:
- String Class New Methods: indent method adjusts the indentation of each line, transform method to revert the string.

- File::mismatch Method: New mismatch method in the nio.file.Files utility class. The method is used to compare two files and find the position of the first mismatched byte in their contents.

- Teeing Collector: A new teeing collector as an addition to the Collectors class. It is a composite of two downstream collectors. Every element is processed by both downstream collectors. Then their results are passed to the merge function and transformed into the final result.

- Compact Number Formatting: It's designed to represent a number in a shorter form, based on the patterns provided by a given locale.

- Switch Expressions (Preview): The syntax of switch statement got introduced. New switch statements are not only more compact and readable. They also remove the need for break statements. The code execution will not fall through after the first match.

- Pattern Matching for instanceof (Preview): Earlier if statements together with instanceof, we would have to explicitly typecast the object to access its features, but now we need not to typecast separately after instanceof.

- Shenandoah: A Low-Pause-Time Garbage Collector: It is now experimental garbage collector and not the default GC. It reduces the GC pause times by doing evacuation work simultaneously with the running Java threads.

- Microbenchmark Suite: Around 100 microbenchmark tests added in JDK which will perform continuous performance testing on a JVM.

- Default CDS Archives: The Class Data Sharing (CDS) feature helps reduce the startup time and memory footprint between multiple Java Virtual Machines.
Features Added:
- Switch Expressions: New yield statement got added. Using yield, we can now effectively return values from a switch expression. It's now easy to implement the strategy pattern using the new switch.

- Text Blocks: It is for multi-line Strings such as embedded JSON, XML, HTML, etc. Now there is no need to escape double quotes or to add a carriage return.

- Dynamic CDS Archives: Class data sharing (CDS) has been a prominent feature of Java HotSpot VM for a while now. It allows class metadata to be shared across different JVMs to reduce startup time and memory footprint.

- ZGC: It now returns uncommitted memory to the operating system by default, up until the specified minimum heap size is reached.

Related differences

Java 11 vs Java 12Java 12 vs Java 13Java 13 vs Java 14
Is it helpful? Yes No

Get differences from below

©2023 WithoutBook