1.增加 put(K key, V value) putAll(Map<? extends K,? extends V> m) 2、删除 clear() remove(Object key) 3、判断 containsKey(Object key) containsValue(Object value) isEmpty() 4、获取 get(Object key) size() values() entrySet() keySet()
关于map的使用,包含了一些简单的方法以及注意的事项
public class MapDemo { public static void main(String[] args) { HashMap<String , Object> map = new HashMap<>(); /** * 初识map * 在集合中允许嵌套 * map集合key不能重复 * * put * 1.添加集合元素的同时他可以编辑原有的元素 * 如果说集合中没有key对应的value那么就往集合中添加元素 * 如果说集合中对应的key有value值,则代表替换原有的值 * * 2.返回替换前的key对应的value值 * entrySet:性能更好 * keySet * * @author MRCHENIKE * */ //键值对 map.put("ads", 12); map.put("aa", 13); map.put("ab", 14); map.put("ac", 15); map.put("ad", 16); map.put("ads", 12); Object put = map.put("ads", "*"); //需要用到身份证号做其他表的查询 System.out.println(put); System.out.println(map); Set<Entry<String, Object>> entrySet = map.entrySet(); for (Entry<String, Object> entry : entrySet) { System.out.println(entry.getKey()+ "==="+entry.getValue()); } System.out.println("====================="); Set<String> keySet = map.keySet(); for (String key : keySet) { System.out.println(key+ "===" +map.get(key)); } } }Hashtable:底层是哈希表数据结构,不可以存入null键null值,该集合石线程同步的,jdk1.0,效率低HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的。将Hashtable替代;jdk1.2,效率高 TreeMap:底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键进行排序 注意:添加元素时,如果键已经在集合中存在,那么后添加的值会覆盖原来的值,并且put方法会将原有的值返回
关于HashMap的应用 应用1 1、将学生作为键,地址作为值进行存储,名字年龄相同则被认定为一个人,最后输出 2、最后按年龄进行排序 3、需求改变、按姓名进行排序
统计功能
1.将字符串转为字符数组 ,将这个字符串中方的字符当成map集合中的key将出现的次数作为value值2.当字符第一次出现的时候。name用他在集合中进行寻找,返回值必然为null,之后将该字符对应的值改为13.如果说改字符不是第一次出现,改字符对应的值不为null,然后应该+1 输出结果后 map集合中的泛型要使用包装类或者是引用数据类型关于TreeMap的应用 统计字符串中字符出现次数,按次数进行排序排序 TreeMap默认按key进行升序排序,如果想改变默认的顺序,可以使用比较器:
输出结果后为 关于map的一些使用方法 jdk文档
