🔥Limited Offer: Get 50% OFFon AI & Full Stack Courses🔥
Back to Java Notes
Topic #111

Java LinkedHashMap


Java LinkedHashMap

A LinkedHashMap stores keys and values, and keeps them in the same order you put them in.

It is part of the java.util package and implements the Map interface.

Tip: Use LinkedHashMap when you want predictable iteration order (insertion order).


Create a LinkedHashMap

Create a LinkedHashMap object called capitalCities that will store String keys and String values:

Example

import java.util.LinkedHashMap; // Import the LinkedHashMap class

LinkedHashMap<String, String> capitalCities = new LinkedHashMap<>();

Now you can use methods like put() to add key/value pairs, get() to retrieve a value by key, and remove() to delete an entry - all while maintaining insertion order.


Add Items

Use the put() method to add items to the LinkedHashMap:

Example

// Import the LinkedHashMap class
import java.util.LinkedHashMap;

public class Main {
  public static void main(String[] args) {
    LinkedHashMap<String, String> capitalCities = new LinkedHashMap<>();

    capitalCities.put("England", "London");
    capitalCities.put("India", "New Dehli");
    capitalCities.put("Austria", "Wien");
    capitalCities.put("Norway", "Oslo");
    capitalCities.put("Norway", "Oslo"); // Duplicate
    capitalCities.put("USA", "Washington DC");

    System.out.println(capitalCities);
  }
}

Note: Output: The items will appear in the order they were added (e.g., {England=London, India=New Dehli, Austria=Wien, Norway=Oslo, USA=Washington DC}). Note: Duplicates like "Norway" are ignored.


Access an Item

Use get() with a key to get its associated value:

Example

capitalCities.get("England");

Remove an Item

Use remove() to remove an item by key:

Example

capitalCities.remove("England");

Use clear() to remove all items:

Example

capitalCities.clear();

LinkedHashMap Size

Use size() to check how many key/value pairs are in the map:

Example

capitalCities.size();

Note: The size only counts unique keys. If a key is added more than once, only the latest value is kept.


Loop Through a LinkedHashMap

You can loop through a LinkedHashMap using a for-each loop. Use:

  • keySet() to get all keys
  • values() to get all values

Example

// Print keys
for (String key : capitalCities.keySet()) {
  System.out.println(key);
}

Example

// Print values
for (String value : capitalCities.values()) {
  System.out.println(value);
}

Example

// Print keys and values
for (String key : capitalCities.keySet()) {
  System.out.println("Key: " + key + ", Value: " + capitalCities.get(key));
}

HashMap vs LinkedHashMap

Feature HashMap LinkedHashMap
Order No guaranteed order Insertion order preserved
Performance Faster for random access Slightly slower due to ordering
Duplicates Keys must be unique Keys must be unique

Tip: Use LinkedHashMap when you want the map to remember the order in which entries were added.


The var Keyword

From Java 10, you can use the var keyword to declare a LinkedHashMap variable without writing the type twice. The compiler figures out the type from the value you assign.

This makes code shorter, but many developers still use the full type for clarity. Since var is valid Java, you may see it in other code, so it's good to know that it exists:

Example

// Without var
LinkedHashMap<String, String> capitalCities = new LinkedHashMap<String, String>();

// With var
var capitalCities = new LinkedHashMap<String, String>();

The Map Interface

Note: Sometimes you will see both Map and LinkedHashMap in Java code, like this:

import java.util.Map;
import java.util.LinkedHashMap;

Map<String, String> capitalCities = new LinkedHashMap<>();

This means the variable (capitalCities) is declared as a Map (the interface), but it stores a LinkedHashMap object (the actual map). Since LinkedHashMap implements the Map interface, this is possible.

It works the same way, but some developers prefer this style because it gives them more flexibility to change the type later.

Want to go beyond the notes?

Join CodingNow 2.0's Java course — live mentorship, real projects, and 100% placement support.

Enroll Now — Free Demo Available

Java LinkedHashMap – FAQs

Quick answers about learning Java LinkedHashMap in Java.

This free note from CodingNow 2.0 explains Java LinkedHashMap in Java — concept, syntax and worked code examples you can copy, run and revise before interviews.
Yes. Every Java topic on CodingNow 2.0, including Java LinkedHashMap, is 100% free with no signup required.
With focused practice, most students grasp Java LinkedHashMap in 1–3 days from these notes; pairing it with CodingNow 2.0's mentor-led course takes you to job-ready depth faster.
Use the code examples in this note, then ask doubts for free on the CodingNow 2.0 Community (/community) — expert instructors answer within 24 hours.
WhatsApp
Call NowEnroll Now