I have an ordered LinkedHashMap and i want to add element at specific index , say at first place or last place in the map. How can i add element in LinkedHashMap at an specific position?
Even if I could add an element to FIRST or LAST position in LinkedHashMap would help!
Use the put() method to add elements to LinkedHashMap collection.
Method 1(Using keys array): You can convert all the keys of LinkedHashMap to a set using Keyset method and then convert the set to an array by using toArray method now using array index access the key and get the value from LinkedHashMap. Parameters: The method does not take any parameters.
It maintains a linkedlist of the entries in the map in the order in which they were inserted. This helps to maintain iteration order and elements will be returned in the order they were first added in.
You could do this element adding to 1. or last place:
Adding to last place ► You just need to remove the previous entry from the map like this:
map.remove(key); map.put(key,value);
Adding to first place ► It's a bit more complicated, you need to clone the map, clear it, put the 1. value to it, and put the new map to it, like this:
I'm using maps with String keys and Group (my custom class) values:
LinkedHashMap<String, Group> newMap=(LinkedHashMap<String, Group>) map.clone(); map.clear(); map.put(key, value); map.putAll(newMap);
As you see, with these methods you can add unlimited amount of things to the begin and to the end of the map.
You can not change the order. It is insert-order
(by default) or access-order
with this constructor:
public LinkedHashMap(int initialCapacity, float loadFactor, boolean accessOrder)
Constructs an empty LinkedHashMap instance with the specified initial capacity, load factor and ordering mode.
Parameters: initialCapacity - the initial capacity loadFactor - the load factor accessOrder - the ordering mode - true for access-order, false for insertion-order
Throws: IllegalArgumentException - if the initial capacity is negative or the load factor is nonpositive
See: LinkedHashMap
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With