Map集合中的方法(添加、删除、判断、获取)

原创 2015年11月21日 16:05:24
/*
 Map集合:该集合存储键(K)值(V)对,一对一往里存,而且要保证键的唯一性。
 	1、添加
 		put(K key,V value)
 		putAll(Map<? extends K,? extends V> m)
 	2、删除
 		clear()
 		remove(Object key)
 	3、判断
 		containsValue(Object value)
 		containsKey(Object key)
 		isEmpty()
 	4、获取
 		get(Object key)
 		siza()
 		values()
 		
 Map
 	  |---Hashtable:底层是哈希表数据结构,不可以存入null键和null值,该集合是线程同步的,jdk1.0效率低。
 	  |---HashMap:底层是哈希表数据结构,允许使用null键和null值,该集合是线程不同步,jdk1.2效率高。
 	  |---TreeMap:底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键进行排序。
 和Set很像,其实Set集合方法底层调用的都是Map集合方法。	  
 */

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class MapDemo {
	public static void main(String[] args) {
		Map<Integer,String> map=new HashMap<Integer,String>();
		
		//添加元素
		map.put(20134316, "尚振伟");
		map.put(20134314, "牛建伟");
		map.put(20134313, "刘中林");
		map.put(20134311, "刘     江");
		//在添加元素时,如果出现相同的键,那么后添加的值会覆盖原有键对应的值(value),
		//并且put方法会返回被覆盖的值。
		map.put(20134311, "傻老二");
		map.put(20134309, "李新鹏");
		map.put(20134318, "田成琳");
		
		System.out.println(map);
		//获取map集合中所有的值
		Collection<String> coll=map.values();
		System.out.println("map集合中的value值为:");
		System.out.println(coll);
		int key=20134316;
		if(map.containsKey(key))
			System.out.println("存在:"+map.get(key));
		System.out.println("containsKey:"+map.containsKey(20134316));
		map.put(20134311, "刘     江");
		System.out.println("添加新元素后,map集合为:");
		System.out.println(map);
		System.out.println("get:"+map.get(20134314));
		//可以通过get()方法的返回值来判断一个键是否存在,通过返回null来判断。
		System.out.println("get:"+map.get(20134319));
		System.out.println("remove:"+map.remove(20134311));
		System.out.println(map);
	}
}


结果:


版权声明:本文为博主原创文章,如需转载请注明出处。

Java Map在遍历过程中删除元素

Java中的Map如果在遍历过程中要删除元素,除非通过迭代器自己的remove()方法,否则就会导致抛出ConcurrentModificationException异常。这么做的原因是为了保证迭代器...
  • u014495327
  • u014495327
  • 2015年01月22日 19:19
  • 7210

Java 遍历Map时 删除元素

package net.nie.test;      import java.util.HashMap;   import java.util.Iterator;   import java....
  • BianChengNinHao
  • BianChengNinHao
  • 2016年08月16日 10:58
  • 7714

java遍历Map时remove删除元素

http://blog.csdn.net/itmyhome1990/article/details/12655411 public class T { public static void ma...
  • leansmall
  • leansmall
  • 2014年05月30日 10:58
  • 1380

Map中删除数据 或是key

在Map中直接删除内容将抛出 java.util.ConcurrentModificationException 异常,如果要删除可以用Iterator的remove()方法。 以下代码报错: ...
  • wangliqiang1014
  • wangliqiang1014
  • 2013年11月28日 11:08
  • 26543

map遍历判断筛选删除时,不能用map.remove直接删除,迭代删除

package net.nie.test;      import java.util.HashMap;   import java.util.Iterator;   import java....
  • weikzhao0521
  • weikzhao0521
  • 2016年11月03日 16:32
  • 2247

java遍历Map时remove删除元素

public class T { /** * @param args */ public static void main(String[] args) { // TODO Auto...
  • itmyhome
  • itmyhome
  • 2013年10月12日 17:49
  • 10648

在map里删除元素

map删除指定元素:     /** 1.HashMap 类映射不保证顺序;某些映射可明确保证其顺序: TreeMap 类     *   2.在遍历Map过程中,不能用map.put(key,ne...
  • shipeng22022
  • shipeng22022
  • 2013年01月17日 15:46
  • 8767

c++ 关于map的遍历 删除

int main(int argc, char* argv[]) { map mapData; mapData["a"] = "aaa"; mapData["b"]...
  • windren06
  • windren06
  • 2012年11月02日 18:36
  • 52856

Map中删除数据

在Map中直接删除内容将抛出 java.util.ConcurrentModificationException 异常,如果要删除可以用Iterator的remove()方法。 以下代码报错: ...
  • u010866487
  • u010866487
  • 2014年07月18日 12:36
  • 1655

c++ map删除元素的三种方式

删除键为bfff指向的元素 cmap.erase("bfff"); 删除迭代器 key所指向的元素 map::iterator key = cmap.find("Anna"); if(key...
  • fuck51cto
  • fuck51cto
  • 2016年08月21日 13:58
  • 8515
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Map集合中的方法(添加、删除、判断、获取)
举报原因:
原因补充:

(最多只允许输入30个字)