Java中的Map.Entry接口提供了某些方法来访问Map中的条目。通过访问Map的条目,我们可以轻松地操纵它们。 Map.Entry 是一个泛型,在 java.util 包中定义。
声明:
Interface Map.Entry k -> Key V -> Value
方法:
- 等于(对象 o)- 它将对象(调用对象)与对象 o 进行比较以确定是否相等。
Syntax :boolean equals(Object o) Parameters : o -> Object to which we want to compare 返回: true: if both objects are equals false: otherwise
- KgetKey()- 返回相应Map条目的键。
Syntax :K getKey() Parameters : ------------- 返回: K -> Returns the corresponding Key of a entry on which it is invoked
例外 -
- IllegalStateException当条目已从Map中删除时抛出。
- V getValue()- 返回相应映射条目的值。
Syntax :V getValue() Parameters : ------------- 返回: V -> Returns the corresponding value of a entry on which it is invoked
- int hashcode()- 返回相应映射条目的哈希码。
Syntax :int hashcode() Parameters : ------------- 返回: int -> Returns the hash-code of entry on which it is invoked
- V设定值(V v)- 设置指定值v的map的值
V setValue(V v) Parameters : v -> Value which was earlier stored in the entry on which it is invoked 返回: int -> Returns the hash-code of a entry on which it is invoked
异常:
- ClassCastException如果值 ‘v’ 的类不是正确的映射类型,则会抛出该异常。
- NullPointerException如果‘null’存储在‘v’中,并且map不支持‘null’,则会抛出该错误。
- UnsupportedOperationException如果我们无法操作Map或者Map不支持 put 操作,则会抛出该异常。
- IllegalArgumetException如果参数有问题,即 v
- IllegalStateException当条目已从Map中删除时抛出
设置<Map.Entry> entrySet() -返回整个Map的集合视图。
注意:这不是 Map.entry 接口的方法,但在这里讨论它是因为该方法在使用 Map.Entry 接口时很有用。
Set<Map.Entry> entrySet() Parameters : --------------- 返回: Set<Map.Entry> ->: Returns a Set containing the Map.Entry values
下面的程序演示了 Map.Entry 的工作原理:
// Java Program to demonstrate the
// methods of Map.Entry
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
public class GFG
{
public static void main(String[] args)
{
// Create a LinkedHashMap
LinkedHashMap<String,Integer> m =
new LinkedHashMap<String, Integer>();
m.put("1 - Bedroom" , 25000);
m.put("2 - Bedroom" , 50000);
m.put("3 - Bedroom" , 75000);
m.put("1 - Bedroom - hall", 65000);
m.put("2 - Bedroom - hall", 85000);
m.put("3 - Bedroom - hall", 105000);
// Using entrySet() to get the entry's of the map
Set<Map.Entry<String,Integer>> s = m.entrySet();
for (Map.Entry<String, Integer> it: s)
{
// Using the getKey to get key of the it element
// Using the getValue to get value of the it element
System.out.println("Before change of value = " +
it.getKey() + " " + it.getValue());
// Changing the value of 1 - Bedroom.
double getRandom = Math.random() * 100000;
int getRoundoff = (int) Math.round(getRandom);
// Using setValue to change the value of the
// map element
it.setValue(getRoundoff);
System.out.println("After change of value = " +
it.getKey() + " " + it.getValue());
}
}
}
输出:
Before change of value = 1 - Bedroom 25000 After change of value = 1 - Bedroom 59475 Before change of value = 2 - Bedroom 50000 After change of value = 2 - Bedroom 51650 Before change of value = 3 - Bedroom 75000 After change of value = 3 - Bedroom 95200 Before change of value = 1 - Bedroom - hall 65000 After change of value = 1 - Bedroom - hall 74112 Before change of value = 2 - Bedroom - hall 85000 After change of value = 2 - Bedroom - hall 41490 Before change of value = 3 - Bedroom - hall 105000 After change of value = 3 - Bedroom - hall 10902
相关用法
- Java Map clear()用法及代码示例
- Java Map containsKey()用法及代码示例
- Java Map containsValue()用法及代码示例
- Java Map entrySet()用法及代码示例
- Java Map equals()用法及代码示例
- Java Map get()用法及代码示例
- Java Map hashCode()用法及代码示例
- Java Map isEmpty()用法及代码示例
- Java Map keySet()用法及代码示例
- Java Map put()用法及代码示例
- Java Map putAll()用法及代码示例
- Java Map remove()用法及代码示例
- Java Map Values()用法及代码示例
- Java Map size()用法及代码示例
- Java Map转Stream用法及代码示例
- Java Map用法及代码示例
- Java Math abs()用法及代码示例
- Java Math acos()用法及代码示例
- Java Math addExact()用法及代码示例
- Java Math asin()用法及代码示例
- Java Math atan()用法及代码示例
- Java Math cos()用法及代码示例
- Java Math sin()用法及代码示例
- Java Math tan()用法及代码示例
- Java Math sinh()用法及代码示例
注:本文由纯净天空筛选整理自佚名大神的英文原创作品 Map.Entry interface in Java with example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。