The LinkedHashMap.values()
method in Java is used to obtain a collection view of the values contained in the LinkedHashMap
.
Table of Contents
- Introduction
values
Method Syntax- Examples
- Iterating Over Values in a LinkedHashMap
- Modifying Values Using Value Collection
- Real-World Use Case
- Example: Calculating Average Age of Users
- Conclusion
Introduction
The LinkedHashMap.values()
method is a member of the LinkedHashMap
class in Java. It returns a Collection
view of the values contained in the map. This Collection
is backed by the LinkedHashMap
, so changes to the map are reflected in the collection, and vice-versa. This method is useful when you need to iterate over the values or perform operations based on the values.
values() Method Syntax
The syntax for the values
method is as follows:
public Collection<V> values()
- The method does not take any parameters.
- The method returns a collection view of the values contained in the map.
Examples
Iterating Over Values in a LinkedHashMap
The values
method can be used to iterate over the values in a LinkedHashMap
.
Example
import java.util.LinkedHashMap;
import java.util.Collection;
public class ValuesExample {
public static void main(String[] args) {
// Creating a LinkedHashMap with String keys and Integer values
LinkedHashMap<String, Integer> people = new LinkedHashMap<>();
// Adding entries to the LinkedHashMap
people.put("Ravi", 25);
people.put("Priya", 30);
people.put("Vijay", 35);
// Getting the collection of values
Collection<Integer> values = people.values();
// Iterating over the collection of values
for (Integer value : values) {
System.out.println(value);
}
}
}
Output:
25
30
35
Modifying Values Using Value Collection
You can also modify the values in the LinkedHashMap
using the value collection.
Example
import java.util.LinkedHashMap;
import java.util.Collection;
public class ModifyValuesExample {
public static void main(String[] args) {
// Creating a LinkedHashMap with String keys and Integer values
LinkedHashMap<String, Integer> people = new LinkedHashMap<>();
// Adding entries to the LinkedHashMap
people.put("Ravi", 25);
people.put("Priya", 30);
people.put("Vijay", 35);
// Getting the collection of values
Collection<Integer> values = people.values();
// Modifying the values using the collection
for (String key : people.keySet()) {
if (people.get(key) == 30) {
people.put(key, 31);
}
}
// Printing the modified LinkedHashMap
System.out.println("Modified LinkedHashMap: " + people);
}
}
Output:
Modified LinkedHashMap: {Ravi=25, Priya=31, Vijay=35}
Real-World Use Case
Example: Calculating Average Age of Users
A common real-world use case for LinkedHashMap.values()
is calculating the average age of users stored in a LinkedHashMap
. For example, let’s consider a scenario where user profiles are stored with usernames as keys and ages as values.
Example
import java.util.LinkedHashMap;
import java.util.Collection;
public class AverageAgeCalculator {
public static void main(String[] args) {
// Creating a LinkedHashMap to store user profiles
LinkedHashMap<String, Integer> userAges = new LinkedHashMap<>();
// Adding user profiles to the LinkedHashMap
userAges.put("Ravi", 25);
userAges.put("Priya", 30);
userAges.put("Vijay", 35);
// Getting the collection of values
Collection<Integer> ages = userAges.values();
// Calculating the average age
int sum = 0;
for (Integer age : ages) {
sum += age;
}
double averageAge = (double) sum / ages.size();
// Printing the average age
System.out.println("Average age of users: " + averageAge);
}
}
Output:
Average age of users: 30.0
In this example, LinkedHashMap.values()
is used to retrieve the ages stored in the map, and then the average age is calculated and printed.
Conclusion
The LinkedHashMap.values()
method in Java provides a way to obtain a collection view of the values contained in the LinkedHashMap
. By understanding how to use this method, you can efficiently manage and manipulate collections of values in your Java applications. The method allows you to iterate over values, modify values, and perform operations based on values, making it a versatile tool for data management.