站长资讯网
最全最丰富的资讯网站

Java Map的基本用法

Java Map的基本用法

Java Map接口 (推荐学习:java课程)

Java Map的基本用法

java.util.Map 接口 查找表

Map 体现的结构是一个多行两列的表格,左列称为key 右列称为value. Map 总是根据key来获取对应的value.因此保存数据时是成对保存的,并且应当将查询的数据作为value查询条件作为key进行保存. Map要求key 不允许重复(equals 比较判定)

常用的实现类

java.util.HashMap,散列表,哈希表

查询速度最快的数据结构

基本用法

public class MapDemo{ 	public static void main(String[] args){ 		Map<String,Integer>map = new HashMap<>(); 		/* 		 * V put(K k,V v) 		 * 将给定的key-value对存入Map 		 * 由于Map要求key不允许重复,所以若 		 * 使用重复的key存储则是替换value操作 		 * 那么返回值就是该key原来对应的value 		 * 若给定的key不存在则返回值为null. 		 */ 		map.put("攻击",60); 		Integer value=map.put("攻速",8); 		System.out.println(value); // null 		value=map.put("攻速",6); 		System.out.println(value); // 8  		/* 		 * V get(Object key) 		 * 根据给定的key获取对应的value 		 * 若给定的key不存在则返回值为null 		 */ 		value =map.get("攻击"); 		System.out.println(value);//60 		/* 		 * V remove(Object key) 		 * 删除当前Map中给定的key所对应的键值对 		 * 返回值为该key对应的value 		 */ 		value = map.remove("攻击"); 		System.out.println(map); 		System.out.println(value); 		/* 		 * int size() 		 * 返回Map中的元素个数 		 */ 		int size = map.size(); 		System.out.println(size); 		/* 		 * 判断当前Map是否包含给定的key或value 		 */ 		boolean ck = map.containsKey("攻速"); 		System.out.println("包含key:"+ck); 		boolean cv = map.containsValue(96); 		System.out.println("包含value:"+cv); 	} }

Map的遍历

import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; import java.util.Set;  /**  * Map的遍历 Map提供了三种遍历方式: 1:遍历所有的key 2:遍历每一组键值对 3:遍历所有的value(相对不常用)  *  */ public class MapDemo2 { 	public static void main(String[] args) { 		Map<String, Integer> map  						= new HashMap<>(); 		map.put("语文", 99); 		map.put("数学", 98); 		map.put("英语", 97); 		map.put("物理", 96); 		map.put("化学", 99); 		System.out.println(map); 		 		/* 		 * 遍历所有的key 		 * Set keySet() 		 * 将当前Map中所有的key以一个Set集合 		 * 形式返回.遍历该集合等同于遍历了所有 		 * 的key 		 */ 		Set<String> keySet = map.keySet(); 		for(String key : keySet) { 			System.out.println("key:"+key); 		} 		 		/* 		 * 遍历每一组键值对 		 * Set entrySet() 		 * 将当前Map中每一组键值对以一个Entry实例 		 * 存入Set集合并返回. 		 *  		 * java.util.Map.Entry 		 * Entry的每一个实例用于表示Map中的一组 		 * 键值对 		 */ 		Set<Entry<String,Integer>> entrySet  						= map.entrySet();		 		for(Entry<String,Integer> e:entrySet) { 			String key = e.getKey(); 			Integer value = e.getValue(); 			System.out.println(key+":"+value); 		} 	} }

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号