

More options to transform ( dropWhile, takeWhile) and generate ( iterate, ofNullable) streams readonly collectors ( toUnmodifiableList) optionals can be transformed to streamsĪrrays.mismatch: find the first mismatching element between two arrays Time-based enhancements to CompletableFuture (timeout, delay) Reactive Streams publish-subscribe framework for asynchronous stream processing with non-blocking backpressure HexFormat to encode and decode of hexadecimal strings., an interface that provides the current instant, an abstraction from that only focuses on the current instant and does not refer to the time zone Process::inputReader, Process::outputWritter, Process::errorReader to access the standard input, output and error streams of the process Service-provider interface for host name and address resolution, enabling mock resolvers in test scenarios and allowing frameworks to have finer control over resolution results → Related: Inside Java - Episode 23 “Java 18 is Here” with Naoto Sato If you need the old behavior check the file.encoding and the native.encoding system properties. InputStreamReader, FileReader, OutputStreamWriter, FileWriter, PrintStream, Formatter, Scanner) Java APIs that depend on the default charset will use UTF-8 by default

If you are curious about all the API level differences between Java 8 later versions, check the AdoptOpenJDK/jdk-api-diff on GitHub or the The Java Version Almanac. Let’s continue with the Java Standard Library, focusing on the new features that we can use in day-to-day coding. No deprecation warnings on import statements.

JDK 9 (Milling Project on private instance methods Try-with-resources allows effectively final variables helloworld ĭiamond operator for anonymous inner classes
