Java Map的操作示例

import java.util.HashMap;

添加元素

Map<String,String> map = new HashMap<String,String>();

// value put(key,value)
map.put("a", "a");
map.put("b", "b");

// Map中的键是不重复的,如果插入两个键值一样的记录,  
// 那么后面插入的记录会覆盖先插入的记录  
map.put("a", "b"); 

遍历元素

// 方法1:
// 使用迭代器遍历Map的键集合(Set),然后根据键取值  
// Set<K> keySet():返回键的set集合
// 通过keySet()方法获取map中所有的键所在的Set集合,再用Set的迭代器获取到每一个键,由键得值

// Set<String> keySet = map.keySet();
// Iterator<String> it = keySet.iterator();
Iterator<String> it = map.keySet().iterator();  
while (it.hasNext()){  
    String key = it.next();  
    String value = map.get(key);  
    System.out.println("key: " + key + "; value: " + value );  
}  
// 方法2:
// 使用迭代器遍历Map的键值对Map.Entry集合(Set)
// Set<Map.Entry<K,V>> entrySet()方法:返回一个set集合,里面装的是Map.Entry接口类型的键值对象
// Map.Entry<K,V>接口类型,里面有K getKey()返回与此项对应的键;V getValue()返回与此项对应的值
// 通过使用entrySet()方法把键和值的映射关系作为对象,存储到set集合中,这个映射关系的类型为Map.Entry

// Set<Map.Entry<String,String>> entrySet = map.entrySet();
// Iterator<Map.Entry<String,String>> it = entrySet.iterator();
Iterator<Map.Entry<String,String>> it = map.entrySet().iterator();  
while (it.hasNext()){  
    // 一个Map.Entry代表一条记录  
    Map.Entry<String,String> entry = it.next();

    // 通过entry可以获得记录的键和值  
    System.out.println("key: " + entry.getKey() + "; value: " + entry.getValue());  
}  

其他操作

// value get(key)
map.get(key);

// 判断map是否包含某个键 
map.containsKey(key);

// 判断map是否包含某个值
map.containsValue(value);

// 清空Map
// void clear()  
map.clear();

// 是否为空
map.isEmpty()

// 获取Map的记录数 
map.size(); 

// 根据键删除Map中的记录
// value remove(key)  
map.remove(key); 

// Collection<V> values() 包含所有值的 Collection 视图
Collection<String> values = map.values();      
Iterator<String> it = values.iterator();
while(it.hasNext()){
    String value = it.next();
    System.out.println(value);
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值