1.Map定义:

  Collection是孤立存在的,向集合中存储元素是一个一个放,Map中的集合 存储是成对,通过键找到值,键和值是映射关系。

2.注意:

  Map集合中不能包含重复的键,但是可以包含重复的值。

3.继承关系:

  Map接口不能实例化,HashMap,LinkedHashMap是Map接口的一个实现类,两个方法使用类似。

4.Map相关的方法:

  添加:put  得到:get  移除:remove

代码:

  

public class MapDemo {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<Integer, String>();
map.put(1, "张三");
map.put(2, "李四");
map.put(3, "王五");
map.put(4, "赵六");
//键值不允许重复 如果重复 覆盖之前的值
map.put(4, "小明");
map.put(10000, "小红");
// System.out.println(map);
// String s = map.remove(1);
// System.out.println(s);
// System.out.println(map);
String s = map.get(4);
System.out.println(s);
}
}

5.集合遍历的方式:

  调用集合的方法keySet,用Set集合存储Map的键

public class MapDemo1 {
public static void main(String[] args) {
//1 调用集合的方法 keySet 将所有的键 存储到Set集合中
//2 遍历Set集合 获取所有的键
//3 调用map集合中get() 获取值
Map<String, String> m = new HashMap<String, String>();
m.put("大哥", "猪大宝");
m.put("二哥", "猪二宝");
m.put("三个", "猪三宝");
Set<String> s = m.keySet();
Iterator<String> it = s.iterator();
while(it.hasNext()){
String key = it.next();
//通过键 key 获得值
String value = m.get(key);
System.out.println(key+": "+value);
}
System.out.println("================================");
for(String didi:m.keySet()){
String value = m.get(didi);
System.out.println(didi+": "+value);
}
}
}

6.集合的操作工具:

  Collections.shuffle对集合进行随机排序

public static void fun1(){
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(12);
list.add(123);
list.add(1234);
list.add(12345);
list.add(123456);
System.out.println(list);
//调用 工具类方法shuffle 对集合进行随机排列
Collections.shuffle(list);
System.out.println(list);
}

  Collections.binarySearch搜索变量

// Collections.binarySearch   静态方法
//传递集合 和要搜寻的变量 如果存在返回 下标 不存在返回负数
public static void fun(){
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
int aa = Collections.binarySearch(list, 2);
System.out.println(aa); }

 

Map接口的使用的更多相关文章

  1. java中集合类中Collection接口中的Map接口的常用方法熟悉

    1:Map接口提供了将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.Map接口中同样提供了集合的常用方法. 2:由于Map集合中的元素是通过key,value,进行存储的,要 ...

  2. 第19章 集合框架(3)-Map接口

    第19章 集合框架(3)-Map接口 1.Map接口概述 Map是一种映射关系,那么什么是映射关系呢? 映射的数学解释 设A,B是两个非空集合,如果存在一个法则,使得对A中的每一个元素a,按法则f,在 ...

  3. Map接口使用注意事项

    1,Map接口对象本身不能直接使用迭代进行输出的.因为map每个位置存放的是一对值. 而iterator每次只能找到一个值.如果一定要迭代输出,可以通过以下步骤.: 但是,Map接口只作为查找使用,输 ...

  4. Map接口,Map.Entry,hashMap类,TreeMap类,WeakHashMap。

    Collection接口之前接触过,每次保存的对象是一个对象,但是在map中保存的是一对对象,是以key->value形式保存的. 定义: public interface Map<K,V ...

  5. List接口、Set接口、Map接口的方法

    一.Collection接口中的方法介绍 int size();返回此Collection中的元素数 boolean isEmpty(); 判断是否为空 boolean containsAll(Col ...

  6. Java集合中Map接口的使用方法

    Map接口 Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value: Map中的键值对以Entry类型的对象实例形式存在: 建(key值 ...

  7. JAVA ,Map接口 ,迭代器Iterator

    1.    Map 接口概述 java.util.Map 接口描述了映射结构, Map 接口允许以键集.值集合或键 - 值映射关系集的形式查看某个映射的内容. Java 自带了各种 Map 类. 这些 ...

  8. Java集合框架中Map接口的使用

    在我们常用的Java集合框架接口中,除了前面说过的Collection接口以及他的根接口List接口和Set接口的使用,Map接口也是一个经常使用的接口,和Collection接口不同,Map接口并不 ...

  9. Java集合之Map接口

    Map使用键值对来存储数据,将键映射到值对象,一个映射不能包含重复的键,每一个键最多只能映射到一个值.Map接口的具体实现类:HashMap,Hashtable,TreeMap,LinkedHashM ...

  10. Java集合——Map接口

    1.定义 Map用于保存存在映射关系<key,value>的数据.其中,key值不能重复(使用equals()方法比较),value值可以重复 2.方法 V  put(key,value) ...

随机推荐

  1. 每天CSS学习之transform-origin

    在上一篇中,我们学习了如何使用transform来进行2D变形.今天要讲述的transform-origin与这个变形有关. origin翻译过来的意思是原点.开端.transform-origin寓 ...

  2. lxml简单用法 解析网页

    import requests s=requests.Session() re=s.get(lgurl,headers=headers)  #此处s可以直接换成requests the_page=re ...

  3. Linux系统命令行中vim编辑器取消高亮显示

    由于在使用vim编辑代码的时候不小心忘记首先输入i(insert)模式,导致写的代码出现了棕黄色的阴影显示 摸索了很久终于找到了解决方法: 1.退出vim编译器 2.在在命令行下输入:nohl,回车 ...

  4. VSTO:使用C#开发Excel、Word【9】

    文件背后的代码VSTO支持文档背后的代码,要求开发人员使用VSTO项目中生成的具有预连接上下文和预连接事件的类.这些类有时被称为“代码后面”类,因为它们是与特定文档或工作表相关联的代码.在Word中, ...

  5. 以黄门镇黄湾村某一扶贫文档为例——将Excel数据填入到已存在的Word模板

    傻瓜可以写出机器读得懂代码,但写出让人能读懂的代码的是优秀程序员 作用:通过Excel文件中的一列数据作为文件名创建Word文档,并将Excel中的一行数据填一表,实现自动化 Excel的VBA宏代码 ...

  6. 某些material英文翻译

    chrome  铬,铬合金, 镀铬 matte  无光泽的,不光滑的 Decal   陶瓷的 duo color  双色 livery  (这个没找到什么吊意思,我看像是一个类似打logo的材质)

  7. spin lock自旋锁 双链表操作(多线程安全)(Ring0)

    通过spin lock自旋锁 ,为每个链表都定义并初始化一个锁,在需要向该链表插入或移除节点时不使用前面介绍的普通函数,而是使用如下方法: ExInterlockedInsertHeadList(&a ...

  8. 用FPGA对ASIC进行原型验证的过程(转)

    用FPGA对ASIC进行原型验证的过程   reference:http://xilinx.eetrend.com/d6-xilinx/article/2018-10/13736.html     鉴 ...

  9. BUG_sql未解决bug

    [SQL]truncate table org_cert;受影响的行: 0时间: 0.021s [Err] 1055 - Expression #1 of ORDER BY clause is not ...

  10. react native 之 获取键盘高度

    多说不如多撸: /** * Created by shaotingzhou on 2017/2/23. *//** * Sample React Native App * https://github ...