Java Specialists' Java Training Europehome of the java specialists' newsletter
Advanced Core Java Courses and Java Performance Consulting

Newsletter - Latest Issues

[Issue 241b] Concurrency Puzzle Useful Hints In the previous newsletter, we sent out a threading puzzle for you to solve. Here are some hints to help you figure out what is going on. [Issue 241] Concurrency Puzzle - System.arraycopy() "Friends don't let friends write low level concurrency by themselves." -@karianna. Here is your chance to participate in a global code review puzzle to figure out what's going on in some synchronized code.
[Issue 240] Interfacing with Messy Humans We humans are rather good at figuring out what is meant from context. Computers are terrible. They do exactly what we tell them to. Fun ensues when we feed them wrong number formatting information. [Issue 239] Sorting Lists List has a new method sort(Comparator). This is handy, as it allows implementations to specialize how to sort their internal data structures. Vector only synchronizes once per list, not once per element. ArrayList avoids copying the array unnecessarily. CopyOnWriteArrayList works.
[Issue 238] java.util.Optional - Short Tutorial By Example Java 8 introduced the java.util.Optional class, based on the famous Guava class by the same name. It was said that we should hardly ever call get(). In this newsletter we offer a short tutorial that demonstrates coding examples of alternatives to get(). [Issue 237] String Compaction Java 6 introduced a mechanism to store ASCII characters inside byte[] instead of a char[]. This feature was removed again in Java 7. However, it is coming back in Java 9, except this time round, compaction is enabled by default and byte[] is always used.
  Newsletter Index
Extreme Java - Concurrency and Performance for Java 8
Extreme Java - Advanced Topics for Java 8
Design Patterns
In-House Courses

© 2010-2016 Heinz Kabutz - All Rights Reserved Sitemap
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. is not connected to Oracle, Inc. and is not sponsored by Oracle, Inc.