Java 集合框架-Map
来源:互联网 发布:牛顿环干涉实验数据 编辑:程序博客网 时间:2024/05/16 14:26
Map:一次添加一对元素。Collection 一次添加一个元素
Map也称为双列集合 Collection集合称为 单列集合
其实map集合中存储的就是键值对
map集合必须保证键的唯一性
常用方法:
1 添加
value put(key,value);返回前一个和key关联的值,如果没有返回null
2 删除
void clear():清空map集合
value remove(key):根据指定的key删除这个键值对
3 判断
containKey(key);
containValue(value);
4 获取
value get(key);通过键获取值 如果没有该键 返回null
当然可以通过返回null 来判断是否包含指定键
int size();获取键的个数
Map常用的子类:
|--Hashtable:内部结构是哈希表,是同步的 不允许null 作为键 null 作为值
|--Properties:用来存储键值对型的配置文件的信息,可以和IO技术相结合
|--HashMap:内部结构是哈希表,是不同步的 允许null 作为键 null 作为值
|--TreeMap:,内部结构是二叉书 不同步的 可以对Map中的集合中的键进行排序
List list=new ArrayList();//非同步的
list=MyCollections.synList(list);//返回一个同步list
给非同步的集合加锁。
class MyCollecitons implements List{
public List synList(List);
return new MyLIST(list);
}
class MyList{
private List list;
private static final Object lock=new Object();
MyList(List list){
this.list=list;
}
public boolean remove(Object obj){
synchronized(lock){
return list.remove(obj);
}
}
public boolean add(Object obj){
synchronized(locj){
return list.add(obj);
}
}
}
package Map.Demo;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;public class MapDemo {public static void main(String[] args) {Map<Integer,String> map=new HashMap<Integer, String>();//method(map);method_2(map);}public static void method_2(Map<Integer, String> map) {map.put(8, "wangwu");map.put(2, "zhaoliu");map.put(6, "zhangsan");map.put(3, "lisi");//取出map中的所有元素//原理 先通过keySet方法获取map中所有的键所在的Set集合,再通过Set的迭代器获取到每一个元素//在对每一个键获取其对应的值即可Set<Integer> keySet=map.keySet();Iterator<Integer> it=keySet.iterator();while(it.hasNext()) {Integer key=it.next();String value=map.get(key);System.out.println(key+":"+value);} }public static void method(Map<Integer,String> map) {//学号和姓名//添加元素System.out.println(map.put(8, "wangcai"));//nullSystem.out.println(map.put(8, "xiaoqiang"));//value 存相同键值会覆盖map.put(2, "zhangsan");map.put(7, "zhaoliu");System.out.println(map);//删除 //System.out.println("remove:"+map.remove(2));//System.out.println(map);//判断 //System.out.println("containKey:"+map.containsKey(7));//获取System.out.println("get:"+map.get(8));}}
- Java 集合框架 Map
- Java集合框架Map
- Java 集合框架-Map
- java集合框架-Map
- Java集合框架-------Map
- java集合框架---Map总结
- 集合框架-MAP(java基础)
- JAVA集合框架之Map
- Java集合框架—Map
- java集合框架之Map
- Java集合框架之Map
- Java集合框架之Map
- Java基础知识-集合框架Map
- java集合框架之map
- java 集合框架 Map-AbstractMap
- Java中map集合框架
- Java集合框架Collection/Map
- java基础-- 集合框架 之 Map集合
- 树的高度,深度,层数
- 强化学习基础学习系列之强化学习简介
- Oracle数据库--表锁的情况查询
- [ 工作--管理]-------项目管理软技术
- 寻向所志大学生
- Java 集合框架-Map
- Java概述
- SSH与SSM学习之hibernate11——hibernate的二级缓存
- Web29. jQuery选择器 Dom操作 样式 事件处理 动画
- Python实现三层BP神经网络
- Google浏览器首页被劫持
- ContextMap详解
- 我是如何从桌面维护转到Linux系统运维
- Web30.jQuery与Ajax