java集合小结(二)Map接口

 

(二)、Map接口

Map集合是一个关联数组,提供键到值得映射,键不能重复 , 值可以重复,但必须要保证键的唯一性。key可以组成Set集合,value可以组成一个List集合。Map接口有如下三个常用的实现类:HashMap、HashTable、TreeMap。

Map集合提供了一下常用方法:

Put(key,value)  将指定的值与此映射中的指定键相关联;

<set>KeySet()  返回此映射中包含的键的 set 视图;

get(Object key)  返回此映射中映射到指定键的值;

<Collection>Values() 返回此映射中包含的值的 collection视图。

1.HashMap 基于哈希算法实现Map接口,底层是哈希表数据结构,允许使用 null 值和 null 键,该集合是不同步的,并且不保证键值的顺序。

2.Hashtable:底层是哈希表数据结构,不可以存入null键null值,该集合是线程同步的。

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

4.Map集合的两种取出方式:

   a.Set<k> keySet:将map中所有的键存入到Set集合,因为set具备迭代器,所有可以迭代方式取出所有的键,在根据get方法,获取每一个键对应的值。

   b.Set<Map.Entry<k,v>> entrySet:将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:Map.Entry,Entry其实就是Map中的一个static内部接口。

 

import java.util.*;


class MapDemo
{
 public static void main(String[] args)
 {
  Map<String,String> map = new HashMap<String,String>();

  map.put("02","zhangsan2");
  map.put("03","zhangsan3");
  map.put("01","zhangsan1");
  map.put("04","zhangsan4");

  //第一种取出方式:将Map集合中的映射关系取出。存入到Set集合中。
  Set<Map.Entry<String,String>> entrySet = map.entrySet();

  Iterator<Map.Entry<String,String>> it = entrySet.iterator();

  while(it.hasNext())
  {
   Map.Entry<String,String> me = it.next();
   String key = me.getKey();
   String value = me.getValue();

   System.out.println(key+":"+value);

  }

  /*
  //第二种取出方式:先获取map集合的所有键的Set集合,keySet();
  Set<String> keySet = map.keySet();

  //有了Set集合。就可以获取其迭代器。
  Iterator<String> it = keySet.iterator();

  while(it.hasNext())
  {
   String key = it.next();
   //有了键可以通过map集合的get方法获取其对应的值。
   String value  = map.get(key);
   System.out.println("key:"+key+",value:"+value);
  }

  */

 }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值