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);
}
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