黑马程序员_15MAP集合<K,V>

来源:互联网 发布:windows命令行指令 编辑:程序博客网 时间:2024/05/17 17:17

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

MAP

|__HashTable:底层用的是哈希表数据结构,键和值不可存入null,该集合线程同步,从JDK1.0开始

|__HashMap: 底层用的是哈希表数据结构,键和值允许为null,该集合线程不同步,从JDK1.2开始

|__TreeMap 底层用的是二叉树数据结构,线程不同步,可以给MAP集合中的键进行排序,其实Set底层就是用了Map集合

该集合存储键值对,并且保证键的唯一性

添加:

put()

putAll()

删除

clear()

remove(Obj key)

判断

containsKey(Obj key)

containsValue(value)

isEmpty()

获取

size()

values()

get(Obj Key)

entrySet()

keySet()

Collections: 是一个工具类

常用方法:

reverseOrder(传入比较器)//强行逆转传入的比较器

reverse(集合)//反转指定列表中的元素顺序

   fill()       //可以将list集合中的所有元素替换成指定元素

   replaceAll(集合,老值,新值)      //将传入集合中的指定元素替换成新值

   swap(集合,角标,角标)      //将传入集合中的2个元素互换


把数组变成List集合的好处:可以使用集合的思想和方法操作数组中的元素,蛋不可以使用集合的增删方法,因为数组的长度是固定的

如果进行增删操作,将发生UnsupportedOperationExpetion


高级for循环:对集合进行遍历,只能获取元素,不能对集合进行过多操作,但是有局限性,必须有被遍历的目标

     遍历数组时,传统for可以定义角标,更为方便

//格式for(数据类型 变量名:被遍历的集合或者数组){       执行语句}


可变参数: ...

其实是一种数组参数的简写形式,不用每次手动建立数组对象,只要将操作的元素作为参数传递即可,隐式将这些参数封装了数组,但是可变参数...必须放在参数列表的最后面


---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

0 0