德阳企业品牌网站建设,织梦 视频网站源码,东莞网络安全建设,通州网站开发map集合
/*
java.util.Map接口中常用的方法
1、Map和Collection 没有继承关系
2、Map集合以key和value的方式存储数据#xff1a;键值对key和valuea都是引用数据类型key和value都是存储对象的内存地址key起到主导地位#xff0c;value是key的一个附属品
3、Map接口中常用的方…map集合
/*
java.util.Map接口中常用的方法
1、Map和Collection 没有继承关系
2、Map集合以key和value的方式存储数据键值对key和valuea都是引用数据类型key和value都是存储对象的内存地址key起到主导地位value是key的一个附属品
3、Map接口中常用的方法Set(K) keySet()获取Map集合中所有的key(所有的键是一个set集合)V remove(Object key) 通过key删除键值对int size()获取Map集合中键值对的个数CollectionV values() 获取Map集合中所有的value,返回一个CollectionsetMap.EntryK,V entrySet()将Map集合转化为set集合假设现在有一个Map集合map集合对象key value--------------1 zhangsan【Map 集合通过entrySet()方法转换成set集合,set集合中的元素类型是Map.EntryK,V】 Map.Entry 和 String一样都是一种类型的名字只不过Map.Entry是静态内部类2 lisi3 wangwuSet set map.entrySet();set集合对象1zhangsan2lisi3wangwu
*/
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class MapTest {public static void main(String[] args) {//创建Map集合对象MapInteger,String map new HashMap();//向Map集合中添加键值对map.put(1,zhangsan);//1 在这里进行了自动装箱map.put(2,lisi);map.put(3,wangwu);//通过key获取valueString value map.get(1);System.out.println(value);//获取所有的valueCollectionString values map.values();for(String s: values){System.out.println(所有的value值s);}//获取键值对数量System.out.println(键值对的数量map.size());//通过key删除 key-valuemap.remove(2);System.out.println(键值对的数量map.size());//判断是否包含某个key//contains 底层调用的是equals方法进行比较的所以自定义的类型需要重写equals方法 重写equals方法比较的是内容System.out.println(map.containsKey(4));//false//判断是否包含某个valueSystem.out.println(map.containsValue(zhangsan));//true//清空mapmap.clear();System.out.println(键值对的数量map.size());//0//判断是否为空System.out.println(map.isEmpty());}
}
遍历Map集合
public class MapTest {public static void main(String[] args) {//创建Map集合对象MapInteger,String map new HashMap();//向Map集合中添加键值对map.put(1,zhangsan);//1 在这里进行了自动装箱map.put(2,lisi);map.put(3,wangwu);//第一种方法获取所有的key通过遍历key从而遍历value//遍历key获取所有的Key,key是一个set集合SetInteger keys map.keySet();//遍历key通过key获取value//迭代器可以IteratorInteger it keys.iterator();while(it.hasNext()){Integer key it.next();String value map.get(key);System.out.println(keyvalue);}//foreach也可以for(Integer key:keys){System.out.println(keymap.get(key));}
//第二种方式SetMap.EntryK,V entrySet()//这种方法是直接把Map集合转化为Set集合。//set集合中的元素类型是Map.EntrySetMap.EntryInteger,String set map.entrySet();//遍历Set集合每一次取出一个node//迭代器
// IteratorMap.EntryInteger,String it2 set.iterator();
// while(it2.hasNext()){
// Map.EntryInteger,String node it2.next(); node是一个静态内部类 实现了Map.Entry(K,V)接口
// Integer key node.getKey();
// String value node.getValue();
// System.out.println(keykey);
// }
//foreach//这种方式效率比较高因为获取key和value都是直接从node对象中获取的属性值//这种方式比较适合大数据量for(Map.EntryInteger,String node:set){System.out.println(node.getKey()--node.getValue());}}
}