您的位置:首页 > 其它

Map接口的基本方法

2015-08-31 19:38 344 查看
package cn.itcast.map;

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

/*
在现实生活中有些数据是以映射关系存在的,也就是成对存在的,比如:

民政局 :
键                    值

老公                老婆
身份证            人
一把要锁       锁
双列集合:
-------------| Map  如果是实现了Map接口的集合类,具备的特点: 存储的数据都是以键值对的形式存在的,键不可重复,值可以重复。
----------------| HashMap
----------------| TreeMap
----------------| Hashtable

Map接口的方法:

添加:
put(K key, V value)
putAll(Map<? extends K,? extends V> m)

删除
remove(Object key)
clear()

获取:
get(Object key)
size()

判断:
containsKey(Object key)
containsValue(Object value)
isEmpty()

*/
public class Demo2 {

public static void main(String[] args) {
Map<String,String> map = new HashMap<String, String>();
//添加方法
map.put("汪峰", "章子怡");
map.put("文章", "马伊琍");
map.put("谢霆锋","张柏芝");
/*
添加
System.out.println("返回值:"+map.put("谢霆锋","黄菲"));  // 如果之前没有存在该键,那么返回的是null,如果之前就已经存在该键了,那么就返回该键之前对应 的值。
Map<String,String> map2 = new HashMap<String, String>();
map2.put("杨振宁", "翁帆");
map2.put("习总", "彭丽媛");
map.putAll(map2); // 把map2的元素添加到map集合中。

*/

/*
删除
System.out.println("删除的数据是:"+map.remove("汪峰")) ;  //根据键删除一条map中的数据,返回的是该键对应 的值。
map.clear(); //清空集合中的所有数据。
*/

/* 获取
System.out.println("根据指定 的键获取对应的值:"+ map.get("文章"));
System.out.println("获取map集合键值对个数:"+map.size());

判断
System.out.println("判断map集合是否包含指定的键:"+ map.containsKey("文章"));
System.out.println("判断map集合中是否包含指定 的值:"+ map.containsValue("张柏芝"));
map.clear();
System.out.println("判断map集合是否为空元素:"+ map.isEmpty());
*/
System.out.println("集合的元素:"+ map);

}

}


package cn.itcast.map;

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

/*
迭代:
keySet()
values()
entrySet()

*/
public class Demo3 {

public static void main(String[] args) {
Map<String,String> map = new HashMap<String, String>();
//添加方法
map.put("汪峰", "章子怡");
map.put("文章", "马伊琍");
map.put("谢霆锋","张柏芝");
map.put("成龙", "林凤娇");
/*
//map集合中遍历方式一: 使用keySet方法进行遍历       缺点: keySet方法只是返回了所有的键,没有值。
Set<String> keys = map.keySet();  //keySet() 把Map集合中的所有键都保存到一个Set类型 的集合对象中返回。
Iterator<String> it = keys.iterator();
while(it.hasNext()){
String key = it.next();
System.out.println("键:"+ key+" 值:"+ map.get(key));
}

//map集合的遍历方式二: 使用values方法进行 遍历。    缺点: values方法只能返回所有 的值,没有键。
Collection<String>  c = map.values(); //values() 把所有的值存储到一个Collection集合中返回。
Iterator<String> it = c.iterator();
while(it.hasNext()){
System.out.println("值:"+ it.next());
}
*/

//map集合的遍历方式三: entrySet方法遍历。
Set<Map.Entry<String,String>>  entrys = map.entrySet();
Iterator<Map.Entry<String,String>> it = entrys.iterator();
while(it.hasNext()){
Map.Entry<String,String> entry = it.next();
System.out.println("键:"+ entry.getKey()+" 值:"+ entry.getValue());
}

}

}


package cn.itcast.map;

import java.util.ArrayList;

class Map{

//静态内部类
static class Entry<K ,V>{
K  key;

V value;

}

}

public class Demo4 {

public static void main(String[] args) {

}

}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Map