Map

Map(不完整)
(1)将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 
(2)Map和Collection的区别?
A:Map 存储的是键值对形式的元素,键唯一,值可以重复。夫妻对
B:Collection 存储的是单独出现的元素,子接口Set元素唯一,子接口List元素可重复。光棍
(3)Map接口功能概述(自己补齐)
A:添加功能
B:删除功能
C:判断功能
D:获取功能
E:长度功能
(4)Map集合的遍历
A:键找值
a:获取所有键的集合
b:遍历键的集合,得到每一个键
c:根据键到集合中去找值

B:键值对对象找键和值
a:获取所有的键值对对象的集合
b:遍历键值对对象的集合,获取每一个键值对对象
c:根据键值对对象去获取键和值

代码体现:
Map<String,String> hm = new HashMap<String,String>();

hm.put("it002","hello");
hm.put("it003","world");
hm.put("it001","java");

//方式1 键找值
Set<String> set = hm.keySet();
for(String key : set) {
String value = hm.get(key);
System.out.println(key+"---"+value);
}

//方式2 键值对对象找键和值
Set<Map.Entry<String,String>> set2 = hm.entrySet();
for(Map.Entry<String,String> me : set2) {
String key = me.getKey();
String value = me.getValue();
System.out.println(key+"---"+value);
}

代码部分

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;


//map集合的获取 
//Set<K> keySet() 获取所有键的集合
//V get(Object key) 获取值得集合
//Collection<V> values()  返回此映射中包含的值
public class MapTest {
public static void main(String[] args) {


Map<String, String> map = new HashMap<String, String>();
map.put("刘恺威", "杨幂");
map.put("黄晓明", "杨颖");
map.put("文章", "马伊琍");
// Set<K> keySet() 获取所有键的集合
System.out.println("Set<K> keySet() 获取所有键");
Set<String> set = map.keySet();
for (String key : set) {
System.out.println(key);
}
System.out.println("------------------");
// V get(Object key) 获取值得集合
System.out.println("V get(Object key)  根据key获取单一值");
System.out.println(map.get("刘恺威"));
System.out.println(map.get("黄晓明"));
System.out.println(map.get("文章"));
System.out.println("------------------");
// Collection<V> values() 返回此映射中包含的值
Collection<String> conn = map.values();
System.out.println("Collection<V> values()  返回所有的值");
for (String value : conn) {
System.out.println(value);
}


}
}



import java.util.HashMap;
import java.util.Map;
import java.util.Set;


public class MapTest2 {
/**
 * 遍历Map的第一种思路
 * 获取所有键的集合
 * 遍历键的集合 获取每一个键
 * 根据键找值
 * 
 * */
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("郭靖", "黄蓉");
map.put("杨过", "小龙女");
map.put("陈玄风", "梅超风");
// 遍历
// 获取键的集合 然后通过键遍历值
// Set<K> keySet() 获取所有键的集合


Set<String> set = map.keySet();
for (String key : set) {
System.out.println(key + "-----" + map.get(key));
}
}


}

import java.util.HashMap;
import java.util.Map;
import java.util.Set;


/**
 * 遍历Map的第二种思路 Set<Map.Entry<K,V>> entrySet() 返回键值对对象 获取键值对对象的集合 遍历键值对对象集合 获取每一个键值对对象
 * 根据键值对获取键 值
 * 
 */
public class MapTest3 {
// 遍历map思路二 获得键值对 对象的集合 根据键值对遍历键 值
// Set<Map.Entry<K,V>> entrySet() 返回键值对
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("郭靖", "黄蓉");
map.put("杨过", "小龙女");
map.put("陈玄风", "梅超风");
Set<Map.Entry<String, String>> me = map.entrySet();
for (Map.Entry<String, String> value : me) {
System.out.println(value.getValue() + "------" + value.getKey());
}


}


}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值