The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available.
See Java Language Changes for a summary of updated language features in Java SE 9 and subsequent releases.
See JDK Release Notes for information about new features, enhancements, and removed or deprecated options for all JDK releases.
This section describes the Java Collections Framework. Here, you will learn what collections are and how they can make your job easier and programs better. You'll learn about the core elements interfaces, implementations, aggregate operations, and algorithms that comprise the Java Collections Framework.
Introduction
tells you what collections are, and how they'll make your job easier
and your programs better. You'll learn about the core elements that
comprise the Collections Framework: interfaces, implementations
and algorithms.
Interfaces
describes the core collection interfaces, which are the heart and soul
of the Java Collections Framework. You'll learn general guidelines for
effective use of these interfaces, including when to use which interface.
You'll also learn idioms for each interface that will help you get the most
out of the interfaces.
Aggregate Operations
iterate over collections on your behalf, which enable you to write more concise and efficient code that process elements stored in collections.
Implementations
describes the JDK's general-purpose collection implementations
and tells you when to use which implementation. You'll also learn about
the wrapper implementations, which add functionality to general-purpose
implementations.
Algorithms
describes the polymorphic algorithms provided by the JDK to operate
on collections. With any luck you'll never have to write your own sort
routine again!
Custom Implementations
tells you why you might want to write your own collection implementation
(instead of using one of the general-purpose implementations provided by the
JDK), and how you'd go about it. It's easy with the JDK's abstract
collection implementations!
Interoperability
tells you how the Collections Framework interoperates with older APIs that
predate the addition of Collections to Java. Also, it tells you how to design
new APIs so that they'll interoperate seamlessly with other new APIs.