Introduction
  • Introduction
GENERICS AND GENERIC PROGRAMMING
  • Why to use generics and generic programming?
  • Generic Programming Quiz
Basic Generics
  • Problem illustration
  • Generic types
  • Using multiple generic types
  • Generic methods
  • Generic methods II
Bounded Type Parameters
  • Bounded type parameters
  • Bounded type parameters exercise
  • Bounded type parameters solution
  • Bounded Type Parameters Quiz
Type Inference
  • What is type inference?
  • Type inference example
  • Type Inference Quiz
Wildcards
  • What are wildcards?
  • Unbounded wildcards example
  • Upper bounded wildcards introduction
  • Upper bounded wildcards example
  • Lower bounded wildcards introduction
  • Lower bounded wildcards example
  • Wildcards exercise
  • Wildcards solution
  • Wildcards and bounded type parameters
  • Wildcards Quiz
Type Erasure
  • What is type erasure?
  • Type erasure example
  • Type erasure and bridge methods
  • Type Erasure Quiz
Homework Exercise I - Generics
  • Generics homework exercise
  • Generics homework solution
  • Generics homework code
COLLECTIONS FRAMEWORK
  • Collections overview
  • How to measure the running time of algorithms?
  • Data structures introduction
  • Collections Framework Quiz
Lists
  • The List interface
  • What are arrays?
  • Array operations visualization
  • ArrayList example
  • What are linked lists?
  • Linked list operations visualization
  • LinkedList example
  • ArrayList and LinkedList performance comparison
  • Vector
  • What are stacks?
  • Stack example
  • Stacks and synchronization
  • Lists Quiz
Queues
  • What are queues?
  • Queue example
  • PriorityQueue example
  • ArrayDeque example
  • ArraydDeque and Stack performance comparison
  • Queue Quiz
Maps
  • What are associative arrays?
  • Hashtables introduction - basics
  • Hashtables introduction - collisions
  • Hashtables introduction - load factor & dynamic resizing
  • HashMap example
  • HashMap example - hashCode() and equals()
  • LinkedHashMap example
  • Tree like structures and red-black trees
  • TreeMap example
  • TreeMap and HashMap performance comparison
  • Comparison of maps
  • Maps Quiz
Sets
  • What are sets?
  • HashSet example
  • LinkedHashSet example
  • TreeSet example
  • Comparison of maps
  • Sets Quiz
Sorting Collections
  • Sorting arrays
  • Sorting collections
  • Comparable interface
  • Comparator interface
  • Sorting with lambdas
Collections Class
  • Methods of the Collections class
  • Copy and bounded type wildcards
  • Unmodifiable collections
  • Synchronized collections
  • Collections Quiz
Homework Exercise II - Collections
  • Collections homework exercise statement