Map常用方法

1. 添加、删除、修改操作

Object put(Object key, Object value): 将当前key、value添加到(或修改)当前map对象中;
void putAll(Map map): 将map中所有key-value对存放到当前map中;
Object remove(Object key): 移除指定key的key-value对,并返回value;
void clear(): 清空当前map中的所有数据;
Map.getOrDefault(Object key, V defaultValue):当Map集合中有这个key时,就使用这个key值;如果没有就使用默认值defaultValue。

2. 元素的查询操作

Object get(Object key): 获取指定key对应的value;
boolean containsKey(Object key): 判断是否包含指定的key;
boolean containsValue(Object value): 判断是否包含指定的value;
int size(): 返回map中key-value对的个数;
boolean isEmpty(): 判断当前map是否为空;
boolean equals(Object obj): 判断当前map和参数对象obj是否相等。

3.Map的遍历

Set keySet(): 返回所有key构成的Set集合;
Collections values(): 返回所有value构成的Collection集合;
Set entrySet(): 返回所有key-value对构成的Set集合。

通过keySet()找到key,values()找到value 或者 entrySet()找到(key,value)

遍历

Set entryset=map.entrySet();
Iterator it=entrySet.iterator();
while(it.hasNext()){
       Object obj=it.next();
       Map.Entry entry=(Map.Entry)obj;
       System.out.println(entry.getKey()+"===="+entry.getValue());
}
Java 集合框架中的 `Map` 是一种常用的数据结构,可将 `key` 和 `value` 进行映射,并提供了丰富的操作方法。以下是一些 `Map` 的常用方法: ### `put(K key, V value)` 用于将指定的键值对插入到 `Map` 中。如果 `Map` 中已经存在该键,则会更新该键对应的值。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class MapExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.put("banana", 2); System.out.println(map); } } ``` ### `get(Object key)` 根据指定的键获取其对应的值。如果 `Map` 中不存在该键,则返回 `null`。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class GetExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); Integer value = map.get("apple"); System.out.println(value); } } ``` ### `remove(Object key)` 根据指定的键从 `Map` 中移除对应的键值对。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class RemoveExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.remove("apple"); System.out.println(map); } } ``` ### `containsKey(Object key)` 判断 `Map` 中是否包含指定的键。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class ContainsKeyExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); boolean contains = map.containsKey("apple"); System.out.println(contains); } } ``` ### `containsValue(Object value)` 判断 `Map` 中是否包含指定的值。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class ContainsValueExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); boolean contains = map.containsValue(1); System.out.println(contains); } } ``` ### `size()` 返回 `Map` 中键值对的数量。示例代码如下: ```java import java.util.HashMap; import java.util.Map; public class SizeExample { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("apple", 1); map.put("banana", 2); int size = map.size(); System.out.println(size); } } ``` ### `entrySet()` 将 `Map` 集合中的键和值映射关系打包为 `Map.Entry` 对象,并将这些对象存入 `Set` 集合中。示例代码如下: ```java import java.util.HashMap; import java.util.Map; import java.util.Set; public class EntrySetExample { public static void main(String[] args) { Map<Integer, String> map = new HashMap<>(); map.put(1, "aaaa"); map.put(2, "bbbb"); map.put(3, "cccc"); Set<Map.Entry<Integer, String>> es = map.entrySet(); for (Map.Entry<Integer, String> entry : es) { Integer key = entry.getKey(); String value = entry.getValue(); System.out.println("key=" + key + " value=" + value); } } } ``` ### `keySet()` 返回 `Map` 集合中所有键组成的 `Set` 集合。示例代码如下: ```java import java.util.HashMap; import java.util.Map; import java.util.Set; public class KeySetExample { public static void main(String[] args) { HashMap<String, Integer> map = new HashMap<>(); map.put("徐冰", 100); map.put("萤火", 99); Set<String> set = map.keySet(); for (String key : set) { System.out.println(key + ":" + map.get(key)); } } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值