Map is an object that maps keys to values. A map cannot contain duplicate keys: Each key can map to at most one value. This Map permits null value
In Java, the Map
interface is a part of the Java Collections Framework and is used to represent a collection of key-value pairs where each key must be unique. It is designed to model the mathematical abstraction of a finite set of key-value pairs, where a key maps to a value.
The Map
interface provides methods for adding, removing, and querying elements based on their keys. Some commonly used implementations of the Map
interface in Java include HashMap
, TreeMap
, and LinkedHashMap
.
Here’s a brief overview of the key characteristics of the Map
interface:
- Key-Value Pairs: Each element in a
Map
is a key-value pair, where the key is used to identify the associated value. - Unique Keys: Keys in a
Map
must be unique. Each key can map to at most one value. - No Duplicate Values Restriction: Values in a
Map
can be duplicated. Different keys, however, must map to different values. - Associative: The
Map
interface is often referred to as an associative container, as it associates keys with values. - Null Values: In most implementations, null values are allowed, but some implementations may have restrictions on using null keys.
Example usage of a Map
:
import java.util.HashMap;
import java.util.Map;
public class MapExample {public static void main(String[] args) {
// Creating a HashMap
Map<String, Integer> studentGrades = new HashMap<>();
// Adding key-value pairs
studentGrades.put(“Alice”, 90);
studentGrades.put(“Bob”, 85);
studentGrades.put(“Charlie”, 95);
// Accessing values using keys
int aliceGrade = studentGrades.get(“Alice”);
System.out.println(“Alice’s Grade: “ + aliceGrade);
// Iterating over the map
for (Map.Entry<String, Integer> entry : studentGrades.entrySet()) {
System.out.println(entry.getKey() + “: “ + entry.getValue());
}
}
}
In this example, studentGrades
is a Map
that associates student names (keys) with their corresponding grades (values). The HashMap
class is used as the implementation of the Map
interface.