Generics make your code more flexible and easier to read, and they help you avoid ClassCastExceptions at runtime. Get started with this introduction to using generics with the Java Collections ...
A few years ago I wrote a Soduko solver in Java. Works great, except I have to edit the source file to change the input because I could never get Swing to work like my mental model said it should. Cut ...