黑马程序员之Map集合以及Collections静态方法

——- android培训java培训、期待与您交流! ———- 

Map类

1、Hashtable:底层是哈希表数据结构,不可以存入null键和null值,该集合是线程不同步的 JDK1.0 效率一般

2、HashMap: 底层是哈希表数据结构,允许使用null键和null值,该集合是线程同步的 JDK1.2 效率高

3、TreeMap:底层是二叉树数据结构,线程不同步,可以用于给map集合中的键进行排序


1添加

put(K key, V value):当存储的键相同时,新的值会替换旧的值,并返回旧的值,如果没有重复,则返回null

putAll(Map< K, V> m)获取全部元素

2删除

clear():清空集合

remove(Object key):删除指定的键

3判断

containsKey(Object value):判断是否存在值

containsValue(Object key):判断是否存在键

isEmpty():判断是否为空集合

4获取

value get(Object key):通过指定键获取对应的值,如果返回null,可以判断该键不存在

特殊情况:在HashMap集合中,是可以存入null键和null值

Int size():返回集合长度

Collection values():获取Map集合中所有的值

keySet方法和entrySet方法

keySet方法取出元素

public static void main(String[] args) {  
    Map<String,String> map = new HashMap<String,String>();  
    map.put("k1", "v1");  
    map.put("k2", "v2");  
    map.put("k3", "v3");  
    //将map集合中的所有键存放到set集合中  
    Set<String> set=map.keySet();  
    //有了set集合,就可以创建迭代器  
    Iterator<String> it = set.iterator();  
    while(it.hasNext());  
    {  
        String key =it.next();  
        //有了map的键,就可以通过get方法取出与之相对应的值  
        String value = map.get(key);  
        System.out.println(key+"--"+value);  
    }  

entrySet方法取出元素

 public static void main(String[] args) {  
        Map<String,String> map = new HashMap<String,String>();  
        map.put("k1", "v1");  
        map.put("k2", "v2");  
        map.put("k3", "v3");  
        //获取集合中的键值关系,存入set集合中  
        Set<Map.Entry<String, String>> set = map.entrySet();  
        Iterator<Map.Entry<String, String>> it =set.iterator();  
        while(it.hasNext())  
        {   
            Map.Entry<String,String> me=it.next();  
            System.out.println(me.getKey()+"-- "+me.getValue());  
            //使用getValue()和getKey()方法
        }  
   } 

Collections静态方法

1、sort(List<> list):根据元素的自然顺序 对指定列表按升序进行排序。

2、sort(List<> list, Comparator<> c):根据指定比较器产生的顺序对指定列表进行排序

3、max(Collection<> coll):根据元素的自然顺序,返回给定collection 的最大元素。

4、binarySearch(List<> list, T key, Comparator<> c):使用二进制搜索算法来搜索指定列表,以获得指定对象

5、fill(List<> list, T obj);:使用指定元素替换指定列表中的所有元素

6、replaceAll(List<> list, T oldVal, T newVal):使用另一个值替换列表中出现的所有某一指定值

7、reverse(List<> list):反转指定列表中元素的顺序

8、reverseOrder():返回一个比较器,它强行反转实现 Comparable 接口那些对象 collection 上的自然顺序。

9、reverseOrder(Comparator<> cmp):返回一个比较器,它强行反转指定比较器的顺序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值