SlideShare a Scribd company logo
COLLECTION
FRAMEWORK
www.blog.cpd-india.com
Call Us: 011-65164822
CPD TECHNOLOGIES
Add:- Block C 9/8, Sector -7, Rohini , Delhi-110085, India
www.cpd-india.com
COLLECTION
FRAMEWORK
The collections framework is a unified architecture for
representing and manipulating collections, enabling
them to be manipulated independently of the details
of their representation. It reduces programming effort
while increasing performance. It enables
interoperability among unrelated APIs, reduces effort
in designing and learning new APIs, and fosters
software reuse. The framework is based on more than
a dozen collection interfaces. It includes
implementations of these interfaces and algorithms to
manipulate them.
CONTENTS
 What is Collection?
 Collections Framework
 Collections Hierarchy
 Collections Implementations
Set
List
Map
OBJECTIVES
 Define a collection
 Describe the collections framework
 Describe the collections hierarchy
 Demonstrate each collection implementation
WHAT IS A COLLECTION?
 A Collection (also known as container) is an object that contains a
group of objects treated as a single unit.
 Any type of objects can be stored, retrieved and manipulated as
elements of collections.
COLLECTIONS FRAMEWORK
Collections Framework is a unified architecture for
managing collections
Main Parts of Collections Framework
1. Interfaces
 Core interfaces defining common functionality exhibited by
collections
1. Implementations
 Concrete classes of the core interfaces providing data structures
1. Operations
 Methods that perform various operations on collections
COLLECTIONS FRAMEWORK
INTERFACES
Core Interface Description
Collection specifies contract that all collections should implement
Set defines functionality for a set of unique elements
SortedSet defines functionality for a set where elements are sorted
List defines functionality for an ordered list of non- unique elements
Map defines functionality for mapping of unique keys to values
SortedMap defines functionality for a map where its keys are sorted
COLLECTIONS FRAMEWORK
IMPLEMENTATIONS
Set List Map
HashSet ArrayList HashMap
LinkedHashSet LinkedList LinkedHashMap
TreeSet Vector Hashtable
Tree Map
Note: Hashtable uses a lower-case “t”
OPERATIONS
Basic collection operations:
 Check if collection is empty
 Check if an object exists in collection.
 Retrieve an object from collection
 Add object to collection
 Remove object from collection
 Iterate collection and inspect each object
Each operation has a corresponding method implementation for
each collection type
COLLECTIONS
CHARACTERISTICS
 Ordered
Elements are stored and accessed in a specific
order
 Sorted
Elements are stored and accessed in a sorted
order
 Indexed
Elements can be accessed using an index
 Unique
Collection does not allow duplicates
ITERATOR
 An iterator is an object used to mark a position in a
collection of data and to move from item to item within
the collection
Syntax:
Iterator <variable> = <CollectionObject>.iterator();
COLLECTIONS HIERARCHY
SET AND LIST
HashSet
Collection
SortedSet
ListSet
LinkedHashSet TreeSet LinkedList Vector ArrayList
implements
implements
implements
implements extends
extends
COLLECTIONS HIERARCHY
MAP
Map
SortedMap
Hashtable
LinkedHashMap
HashMap TreeMap
implements
implements
extends
extends
COLLECTION IMPLEMENTATIONS
Set : Unique things (classes that implement Set)
Map : Things with a unique ID (classes that implement Map)
List : Lists of things (classes that implement List)
LIST
A List cares about the index.
“Paul”“Paul” “Mark”“Mark” “John”“John” “Paul”“Paul” “Luke”“Luke”value
index 0 1 2 3 4
LinkedListLinkedListVectorVectorArrayListArrayList
LIST IMPLEMENTATIONS
ARRAY LIST
import java.util.ArrayList;
public class MyArrayList {
public static void main(String args[ ]) {
ArrayList alist = new ArrayList( );
alist.add(new String("One"));
alist.add(new String("Two"));
alist.add(new String("Three"));
System.out.println(alist.get(0));
System.out.println(alist.get(1));
System.out.println(alist.get(2));
}
}
One
Two
Three
LIST IMPLEMENTATIONS
VECTOR
import java.util.Vector;
public class MyVector {
public static void main(String args[ ]) {
Vector vecky = new Vector( );
vecky.add(new Integer(1));
vecky.add(new Integer(2));
vecky.add(new Integer(3));
for(int x=0; x<3; x++) {
System.out.println(vecky.get(x));
}
}
}
1
2
3
LIST IMPLEMENTATIONS
LINKED LIST
import java.util.LinkedList;
public class MyLinkedList {
public static void main(String args[ ]) {
LinkedList link = new LinkedList( );
link.add(new Double(2.0));
link.addLast(new Double(3.0));
link.addFirst(new Double(1.0));
Object array[ ] = link.toArray( );
for(int x=0; x<3; x++) {
System.out.println(array[x]);
}
}
}
1.0
2.0
3.0
SET
A Set cares about uniqueness, it doesn’t allow duplicates.
“Paul”“Paul”
“Mark”“Mark”
“John”“John”
“Luke”“Luke”
“Fred”“Fred”
“Peter”“Peter”
TreeSetTreeSetLinkedHashSetLinkedHashSetHashSetHashSet
SET IMPLEMENTATIONS
HASH SET
import java.util.*;
public class MyHashSet {
public static void main(String args[ ]) {
HashSet hash = new HashSet( );
hash.add("a");
hash.add("b");
hash.add("c");
hash.add("d");
Iterator iterator = hash.iterator( );
while(iterator.hasNext( )) {
System.out.println(iterator.next( ));
}
}
}
d
a
c
b
SET IMPLEMENTATIONS
LINKED HASH SET
import java.util.LinkedHashSet;
public class MyLinkedHashSet {
public static void main(String args[ ]) {
LinkedHashSet lhs = new LinkedHashSet();
lhs.add(new String("One"));
lhs.add(new String("Two"));
lhs.add(new String("Three"));
Object array[] = lhs.toArray( );
for(int x=0; x<3; x++) {
System.out.println(array[x]);
}
}
}
One
Two
Three
SET IMPLEMENTATIONS
TREE SET
import java.util.TreeSet;
import java.util.Iterator;
public class MyTreeSet {
public static void main(String args[ ]) {
TreeSet tree = new TreeSet();
tree.add("Jody");
tree.add("Remiel");
tree.add("Reggie");
tree.add("Philippe");
Iterator iterator = tree.iterator( );
while(iterator.hasNext( )) {
System.out.println(iterator.next( ).toString( ));
}
}
}
Jody
Philippe
Reggie
Remiel
MAP
A Map cares about unique identifiers.
“Paul”“Paul” “Mark”“Mark” “John”“John” “Paul”“Paul” “Luke”“Luke”
key
value
“Pl” “Ma” “Jn” “ul” “Le”
LinkedHashMapLinkedHashMap TreeMapTreeMapHashtableHashtableHashMapHashMap
MAP IMPLEMENTATIONS
HASH MAP
import java.util.HashMap;
public class MyHashMap {
public static void main(String args[ ]) {
HashMap map = new HashMap( );
map.put("name", "Jody");
map.put("id", new Integer(446));
map.put("address", "Manila");
System.out.println("Name: " + map.get("name"));
System.out.println("ID: " + map.get("id"));
System.out.println("Address: " + map.get("address"));
}
}
Name: Jody
ID: 446
Address: Manila
MAP IMPLEMENTATIONS
HASH TABLE
import java.util.Hashtable;
public class MyHashtable {
public static void main(String args[ ]) {
Hashtable table = new Hashtable( );
table.put("name", "Jody");
table.put("id", new Integer(1001));
table.put("address", new String("Manila"));
System.out.println("Table of Contents:" + table);
}
}
Table of Contents:
{address=Manila, name=Jody, id=1001}
MAP IMPLEMENTATIONS
LINKED HASH MAP
import java.util.*;
public class MyLinkedHashMap {
public static void main(String args[ ]) {
int iNum = 0;
LinkedHashMap myMap = new LinkedHashMap( );
myMap.put("name", "Jody");
myMap.put("id", new Integer(446));
myMap.put("address", "Manila");
myMap.put("type", "Savings");
Collection values = myMap.values( );
Iterator iterator = values.iterator( );
while(iterator.hasNext()) {
System.out.println(iterator.next( ));
}
}
}
Jody
446
Manila
Savings
MAP IMPLEMENTATIONS
TREE MAPimport java.util.*;
public class MyTreeMap {
public static void main(String args[]) {
TreeMap treeMap = new TreeMap( );
treeMap.put("name", "Jody");
treeMap.put("id", new Integer(446));
treeMap.put("address", "Manila");
Collection values = treeMap.values()
Iterator iterator = values.iterator( );
System.out.println("Printing the VALUES....");
while (iterator.hasNext()) {
System.out.println(iterator.next( ));
}
}
}
Printing the VALUES....
Manila
446
Jody
COLLECTION CLASSES SUMMARY
NoBy indexXLinkedList
NoBy indexXVector
NoBy indexXArrayList
NoBy insertion order or
last access order
XLinkedHashSet
By natural order or
custom comparison rules
SortedXTreeSet
NoNoXHashSet
NoBy insertion order or
last access order
XLinkedHashMap
By natural order or
custom comparison rules
SortedXTreeMap
NoNoXHashtable
NoNoXHashMap
SortedOrderedListSetMapClass
KEY POINTS
 Collections Framework contains:
1. Interfaces
2. Implementations
3. Operations
 A list cares about the index.
 A set cares about uniqueness, it does not allow
duplicates.
 A map cares about unique identifiers.
THANK YOU
CPD TECHNOLOGIES
Block C 9/8, Sector -7, Rohini, Delhi-110085, India
Landmark: Near Rohini East Metro Station, Opposite
Metro Pillar No-397
Telephone: 011-65164822
Mobile: +91- 8860352748
Email: support@cpd-india.com

More Related Content

PPT
Java collections concept
kumar gaurav
 
PPTX
MULTI THREADING IN JAVA
VINOTH R
 
PDF
Collections In Java
Binoj T E
 
PPT
Java Collections Framework
Sony India Software Center
 
PPSX
JDBC: java DataBase connectivity
Tanmoy Barman
 
PPTX
Raspberry Pi
Vijay Vishwakarma
 
PPTX
Strings in Java
Abhilash Nair
 
Java collections concept
kumar gaurav
 
MULTI THREADING IN JAVA
VINOTH R
 
Collections In Java
Binoj T E
 
Java Collections Framework
Sony India Software Center
 
JDBC: java DataBase connectivity
Tanmoy Barman
 
Raspberry Pi
Vijay Vishwakarma
 
Strings in Java
Abhilash Nair
 

What's hot (20)

PDF
Java Collection framework
ankitgarg_er
 
PPTX
Java - Collections framework
Riccardo Cardin
 
PPT
sets and maps
Rajkattamuri
 
PPTX
Interface in java
PhD Research Scholar
 
PDF
07 java collection
Abhishek Khune
 
PDF
5 collection framework
Minal Maniar
 
PPSX
Collections - Lists, Sets
Hitesh-Java
 
ODP
Java Collections
parag
 
PPTX
JAVA AWT
shanmuga rajan
 
PPTX
Java swing
Apurbo Datta
 
PPTX
Constructor in java
Hitesh Kumar
 
PPT
Java interfaces
Raja Sekhar
 
PPTX
collection framework in java
MANOJ KUMAR
 
PPTX
Inheritance in java
Tech_MX
 
PDF
Collections in Java Notes
Shalabh Chaudhary
 
PPS
Java Exception handling
kamal kotecha
 
PDF
Java threads
Prabhakaran V M
 
PPTX
Java - Generic programming
Riccardo Cardin
 
PPTX
Arrays in java
Arzath Areeff
 
PPT
Java collection
Arati Gadgil
 
Java Collection framework
ankitgarg_er
 
Java - Collections framework
Riccardo Cardin
 
sets and maps
Rajkattamuri
 
Interface in java
PhD Research Scholar
 
07 java collection
Abhishek Khune
 
5 collection framework
Minal Maniar
 
Collections - Lists, Sets
Hitesh-Java
 
Java Collections
parag
 
JAVA AWT
shanmuga rajan
 
Java swing
Apurbo Datta
 
Constructor in java
Hitesh Kumar
 
Java interfaces
Raja Sekhar
 
collection framework in java
MANOJ KUMAR
 
Inheritance in java
Tech_MX
 
Collections in Java Notes
Shalabh Chaudhary
 
Java Exception handling
kamal kotecha
 
Java threads
Prabhakaran V M
 
Java - Generic programming
Riccardo Cardin
 
Arrays in java
Arzath Areeff
 
Java collection
Arati Gadgil
 
Ad

Similar to Collection Framework in java (20)

PPTX
javaprograming-COLLECTION FRAMEWORK-171012084019.pptx
aniketkumar02062003
 
PPTX
collectionframework-141116005344-conversion-gate01.pptx
hemanth248901
 
PDF
java unit 4 pdf - about java collections
aapalaks
 
PPT
collections
javeed_mhd
 
PDF
Lecture 24
Debasish Pratihari
 
PPT
M251_Meeting 8 (SetsandMap Advanced Java).ppt
smartashammari
 
PPT
M251_Meeting 8 (Sets and Maps_Java_).ppt
smartashammari
 
PPT
Collections
Manav Prasad
 
PPTX
oop lecture framework,list,maps,collection
ssuseredfbe9
 
DOCX
Collections generic
sandhish
 
PPT
Collections in Java
Khasim Cise
 
PPT
Collections
Rajkattamuri
 
PPT
Collection framework
DilvarSingh2
 
PPT
20CS305 Advance Java Programming Unit 1.ppt
logesswarisrinivasan
 
PPTX
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
PPTX
Java Collection Framework 2nd year B.Tech.pptx
kmd198809
 
DOCX
ArrayList.docx
veerendranath12
 
PDF
Collection framework (completenotes) zeeshan
Zeeshan Khan
 
PPTX
Collections
sagsharma
 
javaprograming-COLLECTION FRAMEWORK-171012084019.pptx
aniketkumar02062003
 
collectionframework-141116005344-conversion-gate01.pptx
hemanth248901
 
java unit 4 pdf - about java collections
aapalaks
 
collections
javeed_mhd
 
Lecture 24
Debasish Pratihari
 
M251_Meeting 8 (SetsandMap Advanced Java).ppt
smartashammari
 
M251_Meeting 8 (Sets and Maps_Java_).ppt
smartashammari
 
Collections
Manav Prasad
 
oop lecture framework,list,maps,collection
ssuseredfbe9
 
Collections generic
sandhish
 
Collections in Java
Khasim Cise
 
Collections
Rajkattamuri
 
Collection framework
DilvarSingh2
 
20CS305 Advance Java Programming Unit 1.ppt
logesswarisrinivasan
 
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
Java Collection Framework 2nd year B.Tech.pptx
kmd198809
 
ArrayList.docx
veerendranath12
 
Collection framework (completenotes) zeeshan
Zeeshan Khan
 
Collections
sagsharma
 
Ad

Recently uploaded (20)

PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PPTX
Introduction and Scope of Bichemistry.pptx
shantiyogi
 
PPTX
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
PPTX
Information Texts_Infographic on Forgetting Curve.pptx
Tata Sevilla
 
PPTX
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
PPTX
Tips Management in Odoo 18 POS - Odoo Slides
Celine George
 
PPTX
Understanding operators in c language.pptx
auteharshil95
 
PPTX
Cardiovascular Pharmacology for pharmacy students.pptx
TumwineRobert
 
PDF
The Picture of Dorian Gray summary and depiction
opaliyahemel
 
DOCX
UPPER GASTRO INTESTINAL DISORDER.docx
BANDITA PATRA
 
PPTX
An introduction to Prepositions for beginners.pptx
drsiddhantnagine
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PDF
Electricity-Magnetic-and-Heating-Effects 4th Chapter/8th-science-curiosity.pd...
Sandeep Swamy
 
PDF
UTS Health Student Promotional Representative_Position Description.pdf
Faculty of Health, University of Technology Sydney
 
PPTX
Odoo 18 Sales_ Managing Quotation Validity
Celine George
 
PPTX
Congenital Hypothyroidism pptx
AneetaSharma15
 
PDF
2.Reshaping-Indias-Political-Map.ppt/pdf/8th class social science Exploring S...
Sandeep Swamy
 
PPTX
vedic maths in python:unleasing ancient wisdom with modern code
mistrymuskan14
 
PPTX
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
PPTX
Nursing Management of Patients with Disorders of Ear, Nose, and Throat (ENT) ...
RAKESH SAJJAN
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
Introduction and Scope of Bichemistry.pptx
shantiyogi
 
HISTORY COLLECTION FOR PSYCHIATRIC PATIENTS.pptx
PoojaSen20
 
Information Texts_Infographic on Forgetting Curve.pptx
Tata Sevilla
 
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
Tips Management in Odoo 18 POS - Odoo Slides
Celine George
 
Understanding operators in c language.pptx
auteharshil95
 
Cardiovascular Pharmacology for pharmacy students.pptx
TumwineRobert
 
The Picture of Dorian Gray summary and depiction
opaliyahemel
 
UPPER GASTRO INTESTINAL DISORDER.docx
BANDITA PATRA
 
An introduction to Prepositions for beginners.pptx
drsiddhantnagine
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
Electricity-Magnetic-and-Heating-Effects 4th Chapter/8th-science-curiosity.pd...
Sandeep Swamy
 
UTS Health Student Promotional Representative_Position Description.pdf
Faculty of Health, University of Technology Sydney
 
Odoo 18 Sales_ Managing Quotation Validity
Celine George
 
Congenital Hypothyroidism pptx
AneetaSharma15
 
2.Reshaping-Indias-Political-Map.ppt/pdf/8th class social science Exploring S...
Sandeep Swamy
 
vedic maths in python:unleasing ancient wisdom with modern code
mistrymuskan14
 
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
Nursing Management of Patients with Disorders of Ear, Nose, and Throat (ENT) ...
RAKESH SAJJAN
 

Collection Framework in java

  • 1. COLLECTION FRAMEWORK www.blog.cpd-india.com Call Us: 011-65164822 CPD TECHNOLOGIES Add:- Block C 9/8, Sector -7, Rohini , Delhi-110085, India www.cpd-india.com
  • 2. COLLECTION FRAMEWORK The collections framework is a unified architecture for representing and manipulating collections, enabling them to be manipulated independently of the details of their representation. It reduces programming effort while increasing performance. It enables interoperability among unrelated APIs, reduces effort in designing and learning new APIs, and fosters software reuse. The framework is based on more than a dozen collection interfaces. It includes implementations of these interfaces and algorithms to manipulate them.
  • 3. CONTENTS  What is Collection?  Collections Framework  Collections Hierarchy  Collections Implementations Set List Map
  • 4. OBJECTIVES  Define a collection  Describe the collections framework  Describe the collections hierarchy  Demonstrate each collection implementation
  • 5. WHAT IS A COLLECTION?  A Collection (also known as container) is an object that contains a group of objects treated as a single unit.  Any type of objects can be stored, retrieved and manipulated as elements of collections.
  • 6. COLLECTIONS FRAMEWORK Collections Framework is a unified architecture for managing collections Main Parts of Collections Framework 1. Interfaces  Core interfaces defining common functionality exhibited by collections 1. Implementations  Concrete classes of the core interfaces providing data structures 1. Operations  Methods that perform various operations on collections
  • 7. COLLECTIONS FRAMEWORK INTERFACES Core Interface Description Collection specifies contract that all collections should implement Set defines functionality for a set of unique elements SortedSet defines functionality for a set where elements are sorted List defines functionality for an ordered list of non- unique elements Map defines functionality for mapping of unique keys to values SortedMap defines functionality for a map where its keys are sorted
  • 8. COLLECTIONS FRAMEWORK IMPLEMENTATIONS Set List Map HashSet ArrayList HashMap LinkedHashSet LinkedList LinkedHashMap TreeSet Vector Hashtable Tree Map Note: Hashtable uses a lower-case “t”
  • 9. OPERATIONS Basic collection operations:  Check if collection is empty  Check if an object exists in collection.  Retrieve an object from collection  Add object to collection  Remove object from collection  Iterate collection and inspect each object Each operation has a corresponding method implementation for each collection type
  • 10. COLLECTIONS CHARACTERISTICS  Ordered Elements are stored and accessed in a specific order  Sorted Elements are stored and accessed in a sorted order  Indexed Elements can be accessed using an index  Unique Collection does not allow duplicates
  • 11. ITERATOR  An iterator is an object used to mark a position in a collection of data and to move from item to item within the collection Syntax: Iterator <variable> = <CollectionObject>.iterator();
  • 12. COLLECTIONS HIERARCHY SET AND LIST HashSet Collection SortedSet ListSet LinkedHashSet TreeSet LinkedList Vector ArrayList implements implements implements implements extends extends
  • 14. COLLECTION IMPLEMENTATIONS Set : Unique things (classes that implement Set) Map : Things with a unique ID (classes that implement Map) List : Lists of things (classes that implement List)
  • 15. LIST A List cares about the index. “Paul”“Paul” “Mark”“Mark” “John”“John” “Paul”“Paul” “Luke”“Luke”value index 0 1 2 3 4 LinkedListLinkedListVectorVectorArrayListArrayList
  • 16. LIST IMPLEMENTATIONS ARRAY LIST import java.util.ArrayList; public class MyArrayList { public static void main(String args[ ]) { ArrayList alist = new ArrayList( ); alist.add(new String("One")); alist.add(new String("Two")); alist.add(new String("Three")); System.out.println(alist.get(0)); System.out.println(alist.get(1)); System.out.println(alist.get(2)); } } One Two Three
  • 17. LIST IMPLEMENTATIONS VECTOR import java.util.Vector; public class MyVector { public static void main(String args[ ]) { Vector vecky = new Vector( ); vecky.add(new Integer(1)); vecky.add(new Integer(2)); vecky.add(new Integer(3)); for(int x=0; x<3; x++) { System.out.println(vecky.get(x)); } } } 1 2 3
  • 18. LIST IMPLEMENTATIONS LINKED LIST import java.util.LinkedList; public class MyLinkedList { public static void main(String args[ ]) { LinkedList link = new LinkedList( ); link.add(new Double(2.0)); link.addLast(new Double(3.0)); link.addFirst(new Double(1.0)); Object array[ ] = link.toArray( ); for(int x=0; x<3; x++) { System.out.println(array[x]); } } } 1.0 2.0 3.0
  • 19. SET A Set cares about uniqueness, it doesn’t allow duplicates. “Paul”“Paul” “Mark”“Mark” “John”“John” “Luke”“Luke” “Fred”“Fred” “Peter”“Peter” TreeSetTreeSetLinkedHashSetLinkedHashSetHashSetHashSet
  • 20. SET IMPLEMENTATIONS HASH SET import java.util.*; public class MyHashSet { public static void main(String args[ ]) { HashSet hash = new HashSet( ); hash.add("a"); hash.add("b"); hash.add("c"); hash.add("d"); Iterator iterator = hash.iterator( ); while(iterator.hasNext( )) { System.out.println(iterator.next( )); } } } d a c b
  • 21. SET IMPLEMENTATIONS LINKED HASH SET import java.util.LinkedHashSet; public class MyLinkedHashSet { public static void main(String args[ ]) { LinkedHashSet lhs = new LinkedHashSet(); lhs.add(new String("One")); lhs.add(new String("Two")); lhs.add(new String("Three")); Object array[] = lhs.toArray( ); for(int x=0; x<3; x++) { System.out.println(array[x]); } } } One Two Three
  • 22. SET IMPLEMENTATIONS TREE SET import java.util.TreeSet; import java.util.Iterator; public class MyTreeSet { public static void main(String args[ ]) { TreeSet tree = new TreeSet(); tree.add("Jody"); tree.add("Remiel"); tree.add("Reggie"); tree.add("Philippe"); Iterator iterator = tree.iterator( ); while(iterator.hasNext( )) { System.out.println(iterator.next( ).toString( )); } } } Jody Philippe Reggie Remiel
  • 23. MAP A Map cares about unique identifiers. “Paul”“Paul” “Mark”“Mark” “John”“John” “Paul”“Paul” “Luke”“Luke” key value “Pl” “Ma” “Jn” “ul” “Le” LinkedHashMapLinkedHashMap TreeMapTreeMapHashtableHashtableHashMapHashMap
  • 24. MAP IMPLEMENTATIONS HASH MAP import java.util.HashMap; public class MyHashMap { public static void main(String args[ ]) { HashMap map = new HashMap( ); map.put("name", "Jody"); map.put("id", new Integer(446)); map.put("address", "Manila"); System.out.println("Name: " + map.get("name")); System.out.println("ID: " + map.get("id")); System.out.println("Address: " + map.get("address")); } } Name: Jody ID: 446 Address: Manila
  • 25. MAP IMPLEMENTATIONS HASH TABLE import java.util.Hashtable; public class MyHashtable { public static void main(String args[ ]) { Hashtable table = new Hashtable( ); table.put("name", "Jody"); table.put("id", new Integer(1001)); table.put("address", new String("Manila")); System.out.println("Table of Contents:" + table); } } Table of Contents: {address=Manila, name=Jody, id=1001}
  • 26. MAP IMPLEMENTATIONS LINKED HASH MAP import java.util.*; public class MyLinkedHashMap { public static void main(String args[ ]) { int iNum = 0; LinkedHashMap myMap = new LinkedHashMap( ); myMap.put("name", "Jody"); myMap.put("id", new Integer(446)); myMap.put("address", "Manila"); myMap.put("type", "Savings"); Collection values = myMap.values( ); Iterator iterator = values.iterator( ); while(iterator.hasNext()) { System.out.println(iterator.next( )); } } } Jody 446 Manila Savings
  • 27. MAP IMPLEMENTATIONS TREE MAPimport java.util.*; public class MyTreeMap { public static void main(String args[]) { TreeMap treeMap = new TreeMap( ); treeMap.put("name", "Jody"); treeMap.put("id", new Integer(446)); treeMap.put("address", "Manila"); Collection values = treeMap.values() Iterator iterator = values.iterator( ); System.out.println("Printing the VALUES...."); while (iterator.hasNext()) { System.out.println(iterator.next( )); } } } Printing the VALUES.... Manila 446 Jody
  • 28. COLLECTION CLASSES SUMMARY NoBy indexXLinkedList NoBy indexXVector NoBy indexXArrayList NoBy insertion order or last access order XLinkedHashSet By natural order or custom comparison rules SortedXTreeSet NoNoXHashSet NoBy insertion order or last access order XLinkedHashMap By natural order or custom comparison rules SortedXTreeMap NoNoXHashtable NoNoXHashMap SortedOrderedListSetMapClass
  • 29. KEY POINTS  Collections Framework contains: 1. Interfaces 2. Implementations 3. Operations  A list cares about the index.  A set cares about uniqueness, it does not allow duplicates.  A map cares about unique identifiers.
  • 30. THANK YOU CPD TECHNOLOGIES Block C 9/8, Sector -7, Rohini, Delhi-110085, India Landmark: Near Rohini East Metro Station, Opposite Metro Pillar No-397 Telephone: 011-65164822 Mobile: +91- 8860352748 Email: [email protected]

Editor's Notes

  • #6: Notes: A collection (sometimes called a container) is simply an object that groups multiple elements into a single unit. Collections are used to store, retrieve and manipulate data, and to transmit data from one method to another. Collections typically represent data items that form a natural group, like a poker hand (a collection of cards), a mail folder (a collection of letters), or a telephone directory (a collection of name-to-phone-number mappings).
  • #7: Notes: The Collections Framework in Java, which took shape with the release of JDK1.2 (the first Java 2 version) and expanded in 1.4 gives you lists, sets, and maps to satisfy most of your coding needs. They&amp;apos;ve been tried, tested, and tweaked. Pick the best one for your job and you&amp;apos;ll get - at the lest - reasonably good performance. And when you need something a little more custom, the Collections Framework in the java.util package is loaded with interfaces and utilities. Interfaces Interfaces allow collections to be manipulated independently of the details of their representation. In object-oriented languages like Java, these interfaces generally form a hierarchy. Implementation In essence, these are reusable data structures. Operations These algorithms are said to be polymorphic because the same method can be used on many different implementations of the appropriate collections interface. In essence, algorithms are reusable functionality
  • #11: Notes: Ordered A Hashtable collection is not ordered. Although the Hashtable itself has internal logic to determine the order (based on hashcodes), you won’t find any order when you iterate through the Hashtable. An ArrayList, however, keeps the order established by the elements’ index position (just like an array). LinkedHashSet keeps the order established by insertion, so the last element inserted is the last element in the LinkedHashSet (unlike an ArrayList where you can insert an element at a specific index position). Sorted You know how to sort alphabetically – A comes before B… For a collection of String objects, then the natural order is alphabetical. For Integer objects, the natural order is by numeric value. There is no natural order for self-defined classes unless or until the developer provides one, through an interface that defines how instances of a class can be compared to one another.
  • #15: Transition: Click the Red List Button to proceed to the topic on List. Click the Green Set Button to proceed to the topic on Set. Click the Blue Map Button to proceed to the topic on Map.
  • #16: Notes: A list cares about the index. The one thing that List has that non-lists don’t have is a set of methods related to the index. All three List implementations are ordered by index position – a position that you determine either by setting an object at a specific index or by adding it without specifying position, in which case the object is added to the end. Transition: Click ArrayList to view the sample solution. Click Vector to view the sample solution. Click Linked List to view the sample solution. Click the Red Area to go back to the previous slide.
  • #18: Vector is synchronized – only one thread can access it. Synchronization protects an object from multiple threads making modifications to an object’s state. Additionally, Hashtable is also synchronized.
  • #20: Notes: A Set cares about uniqueness – it doesn’t allow duplicates. Your good friend the equals( ) method determines whether two objects are identical (in which case only one can be in the se). The three Set implementations are described in the following sections. Transition: Click on the HashSet to view the sample solution. Click on the LinkedHashSet to view the sample solution. Click on the TreeSet to view the sample solution. Click the Green Area to go back to the previous slide.
  • #24: Notes: A Map cares about unique identifiers. You map a unique key (the ID) to a specific value, where both the key and the values are of course objects. You’re probably quite familiar with Maps since many languages support data structures that use key/value or name/value pair. Where the keys land in the Map is based on the key’s hashcode, so, like HashSet, the more efficient your hashCode( ) implementation, the better access performance you’ll get. The Map implementations let you do things like search for a value based on the key, as for a collection of just the values, or ask for a collection of just the keys. Transition: Click on the HashMap to view the sample solution. Click on the Hashtable to view the sample solution. Click on the LinkedHashMap to view the sample solution. Click on the TreeMap to view the sample solution. Click the Blue Area to go back to the previous slide.