JavaMap类

Map集合没有继承Collection接口,其提供的是key到value的映射。Map中不能包含相同的key,每个key只能映射一个value。key含决定了储存对象在映射的位置,但不是由key对象本身决定的,而是通过一种“散列技术”进行处理,产生一个散列码的整数值。散列码通常用一个偏移量,该偏移量对应分配给映射的内存区域的起始位置。Map集合包括Map接口以及Map接口的所有实现类。

Map接口
Map接口提供了将key映射到值的对象。一个映射不能包含重复的key,每个key最多只能映射到一个值。Map接口中同样提供了集合的常用方法,除此之外含包括如下表所示的常用方法:

方法功能
put(K key,V vaule)向集合中添加指定的key与value的映射关系
containsValueKey(Object key)如果此映射包含指定key的映射关系,则返回true
containsValue(Object value)如果此映射将一个或多个key映射到指定值,则返回true
get(Object key)如果存在指定的key对象,则返回指定对象的值,否则返回null
keySet()返回该集合中的所有key对象形成的set集合
value()返回该集合中所有值对象形成的Collection
package cn.cn.Map类;


import java.util.*;

public class diyi {
    public static void main(String[] args) {
        Map<Integer,String> m1=new HashMap<>();  //创建Map实例
        m1.put(1,"one");            //向集合中添加对象
        m1.put(2,"tow");
        Set<Integer>set=m1.keySet();
        Iterator<Integer> it=set.iterator();
        System.out.println("key 集合中的元素:");
        while(it.hasNext()){
            System.out.println(it.next());
        }


    }
}

Map的实现类
Map接口常用的实现类有HashMap和TreeMap。建议使用HashMap类实现Map,因为由HashMap类实现的Map集合添加和删除元素效率更高。HashMap是基于哈希表的Map接口的实现,HashMap通过哈希码对其内部的映射关系进行快速查找;而TreeMap中的映射关系存在一定的顺序,如果希望Map集合中的对象也存在一定顺序,应该使用TreeMap类实现Map集合;

  • HashMap类是基于哈希表的Map接口实现,此实现提供所有可选的映射操作,并允许使用null值和null键,但必须保证键的唯一性。HashMap通过哈希表对应其内部的映射关系经行查找。此类不保证顺序,特别是他不保证该顺序恒久不变。
  • TreeMap类不仅实现了Map接口,含实现了javamutil.SortedMap类口,因此,集合中的映射关系具有一定的顺序。但在添加、删除和定位映射关系是,TreeMap类比HashMap类性能稍差。由于TreeMap类实现的Map集合中的映射关系是更具对象中的顺序排列的,因此不允许键对象是null。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值