© 1998-2002 McGraw-Hill

structure
Interface Map

All Known Subinterfaces:
OrderedMap
All Known Implementing Classes:
AbstractMap, ChainedHashtable, Hashtable, MapList

public interface Map

Associations establish a link between a key and a value. An associative array or map is a structure that allows a disjoint set of keys to become associated with an arbitrary set of values. The convenience of an associative array is that the values used to index the elements need not be comparable and their range need not be known ahead of time. Furthermore, there is no upper bound on the size of the structure. It is able to maintain an arbitrary number of different pieces of information simultaneously. Maps are sometimes called dictionaries because of the uniqueness of the association of words and definitions in a household dictionary.

Example Usage:

To create a dictionary by reading a collection of words and definitions from System.in we could use the following!

 public static void main (String[] argv){
	Map dict = new structure.MapBST#MapBST();
	ReadStream r = new ReadStream();
	String word, def;
	System.out.println("Enter a word: ");
	while(!r.eof()){
	    word = r.readLine();
	    System.out.println("Enter a definition: ");
	    def = r.readLine();
	    dict.put(word,def);
	    System.out.println("Enter a word: ");
	}
	System.out.println(dict);
 }
 


Method Summary
 void clear()
           
 boolean containsKey(Object k)
           
 boolean containsValue(Object v)
           
 Set entrySet()
           
 boolean equals(Object other)
           
 Object get(Object k)
           
 int hashCode()
           
 boolean isEmpty()
           
 Set keySet()
           
 Object put(Object k, Object v)
           
 void putAll(Map other)
           
 Object remove(Object k)
           
 int size()
           
 Structure values()
           
 

Method Detail

size

public int size()
Postcondition:
returns the number of entries in the map

isEmpty

public boolean isEmpty()
Postcondition:
returns true iff this map does not contain any entries

containsKey

public boolean containsKey(Object k)
Precondition:
k is non-null
Postcondition:
returns true iff k is in the domain of the map

containsValue

public boolean containsValue(Object v)
Precondition:
v is non-null
Postcondition:
returns true iff v is the target of at least one map entry; that is, v is in the range of the map

get

public Object get(Object k)
Precondition:
k is a key, possibly in the map
Postcondition:
returns the value mapped to from k, or null

put

public Object put(Object k,
                  Object v)
Precondition:
k and v are non-null
Postcondition:
inserts a mapping from k to v in the map

remove

public Object remove(Object k)
Precondition:
k is non-null
Postcondition:
removes any mapping from k to a value, from the mapping

putAll

public void putAll(Map other)
Precondition:
other is non-null
Postcondition:
all the mappings of other are installed in this map, overriding any conflicting maps

clear

public void clear()
Postcondition:
removes all map entries associated with this map

keySet

public Set keySet()
Postcondition:
returns a set of all keys associated with this map

values

public Structure values()
Postcondition:
returns a structure that contains the range of the map

entrySet

public Set entrySet()
Postcondition:
returns a set of (key-value) pairs, generated from this map

equals

public boolean equals(Object other)
Overrides:
equals in class Object
Precondition:
other is non-null
Postcondition:
returns true iff maps this and other are entry-wise equal

hashCode

public int hashCode()
Overrides:
hashCode in class Object
Postcondition:
returns a hash code associated with this structure

© 1998-2002 McGraw-Hill