`
zjf201172653
  • 浏览: 45516 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Java集合Map接口与Map.Entry学习

阅读更多

Java集合Map接口与Map.Entry学习

 

   
       Map接口不是Collection接口的继承。Map接口用于维护键/值对(key/value pairs)。该接口描述了从不重复的键到值的映射。

  (1) 添加、删除操作:
  Object put(Object key, Object value): 将互相关联的一个关键字与一个值放入该映像。如果该关键字已经存在,那么与此关键字相关的新值将取代旧值。方法返回关键字的旧值,如果关键字原先并不存在,则返回null
  Object remove(Object key): 从映像中删除与key相关的映射
  void putAll(Map t): 将来自特定映像的所有元素添加给该映像
  void clear(): 从映像中删除所有映射
  “键和值都可以为null。但是,您不能把Map作为一个键或值添加给自身。”
  (2) 查询操作:
  Object get(Object key): 获得与关键字key相关的值,并且返回与关键字key相关的对象,如果没有在该映像中找到该关键字,则返回null
  boolean containsKey(Object key): 判断映像中是否存在关键字key
  boolean containsValue(Object value): 判断映像中是否存在值value
  int size(): 返回当前映像中映射的数量
  boolean isEmpty() :判断映像中是否有任何映射
  (3) 视图操作 :处理映像中键/值对组
  Set keySet(): 返回映像中所有关键字的视图集
  “因为映射中键的集合必须是唯一的,您用Set支持。你还可以从视图中删除元素,同时,关键字和它相关的值将从源映像中被删除,但是你不能添加任何元素。”
  Collection values():返回映像中所有值的视图集
  “因为映射中值的集合不是唯一的,您用Collection支持。你还可以从视图中删除元素,同时,值和它的关键字将从源映像中被删除,但是你不能添加任何元素。”
  Set entrySet(): 返回Map.Entry对象的视图集,即映像中的关键字/值对
  “因为映射是唯一的,您用Set支持。你还可以从视图中删除元素,同时,这些元素将从源映像中被删除,但是你不能添加任何元素。”
  Map.Entry接口
  Map的entrySet()方法返回一个实现Map.Entry接口的对象集合。集合中每个对象都是底层Map中一个特定的键/值对。

  通过这个集合的迭代器,您可以获得每一个条目(唯一获取方式)的键或值并对值进行更改。当条目通过迭代器返回后,除非是迭代器自身的remove() 方法或者迭代器返回的条目的setValue()方法,其余对源Map外部的修改都会导致此条目集变得无效,同时产生条目行为未定义。
  (1) Object getKey(): 返回条目的关键字
  (2) Object getValue(): 返回条目的值
  (3) Object setValue(Object value): 将相关映像中的值改为value,并且返回旧值

例子:java代码

Map<String,Integer> map=new HashMap<String,Integer>();   

map.put("1", 1);   

map.put("2", 2);   

map.put("3", 3);   

map.put("3", 3);       

Iterator itor=map.entrySet().iterator();   

while(itor.hasNext()){   

  Map.Entry<String,Integer> entry=(Map.Entry<String,Integer>)itor.next();   

  System.out.println("key="+entry.getKey().toString());   

  System.out.println("values="+entry.getValue().toString());   

}   


 

分享到:
评论

相关推荐

    java集合框架 解析

    java集合框架 3.6. LinkedHashSet类 4. Map接口 4.1. Map.Entry接口 4.2. SortedMap接口 4.3. AbstractMap抽象类 4.4. HashMap类和TreeMap类 4.4.1. HashMap类 4.4.2. TreeMap类 4.5. LinkedHashMap类 4.6. ...

    java中Map集合的常用遍历方法及HashMap的应用实例

    1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中, 放着的就是Map中的某一对key-value; 2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来 读取Map中的元素; 3、...

    Java集合Map常见问题_动力节点Java学院整理

    HashMap是基于hashing的原理,我们使用put(key, value)存储对象到HashMap中,使用get(key)从...当我们给put()方法传递键和值时,我们先对键调用hashCode()方法,返回的hashCode用于找到bucket位置来储存Entry对象。

    java遍历特例

    java Map 遍历方法 Map map = new HashMap(); Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Map.Entry) it.next(); Object key = entry.getKey(); ...

    Java-list-set-map.zip_Java list

    java 集合类的详细介绍 set map list 以及iterator entry 的介绍

    怎么在java 8的map中使用stream

    Map是java中非常常用的一个集合类型,我们通常也需要去遍历Map去获取某些值,java 8引入了Stream的概念,那么我们怎么在Map中使用Stream呢? 基本概念 Map有key,value还有表示key,value整体的Entry。 创建一个Map...

    Java期末复习-类集框架

    SortedMap接口、HashMap类、Hashtable类、Properties类、Map.Entry接口、WeakHashMap类、IndentityHashMap类 集合输出: Iterator、ListIterator、foreach、废除的Enumeration Collections工具类 Comparable接口、...

    Java-Collections

    Java集合## CIT360课程###集合接口: [收藏界面](1_The Collection Interface.txt) •[示例](collectionExample.js) [列表界面](2_The List Interface.txt) •[示例](interfaceExample.js) [The Set](3_The...

    java summary(java笔记)

    学习java的一些笔记和个人总结 9、Collection 和 Collections的区别。  Collection是集合类的上级接口,继承与他的接口主要有Set 和List.。Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种...

    java8集合源码-java11-quick-guide:开发变化准备从java8跳转到java11

    java8集合源码从 Java8 到 Java11 - 开发指南 Java 9 Java REPL (JShell) 它代表Java Shell 。 它用于轻松执行和测试任何 Java 构造,如类、接口、枚举等。 模块系统 我们使用 jar 部署基于 Java 的应用程序的方式有...

    Java工具库BeanQuery.zip

    执行完以上代码后,result列表中的每个Map都是java.util.LinkedHashMap实例,每个Map的都由下面的这三个Entry组成: key=price, value=book.getPrice() key=name, value=book.getName() key=...

    java8集合源码-learn_J9:学习_J9

    java8集合源码Java 9 历史 进步/改进 新版本字符串 接口私有方法 试用资源 匿名内部类的菱形运算符 //Eclipse @SafeVarargs 注解 //Eclipse 不可变 List、Set、Map 和 Map.Entry 的工厂方法 使用 takeWhile() 和 ...

    JAVA面试题最全集

    一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入...

    javascript 实现map集合

    前几天项目上想用map集合一样的东西,简单拿对象拼了一下子,今天闲的慌实现一下 大家不要见笑 代码 var Map = function (){ /************基础变量**************/ var hashmap = {}; var keys = []; var vals...

    java8看不到源码-jcommon:我在项目中使用的常用工具、抽象和工具。它们使Java变得愉快

    如果你有很多步骤,流是可以的,但对于简单的步骤(并且简单的步骤更常见)实例化(vs标准,vs集合,vs番石榴)一切都扩展了通常的集合(所以在任何地方都被接受)除了添加的方法示例之外,一切都是可修改的创建、...

    java 面试题 总结

     Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 10、&和&&的区别。 &是位运算符...

    jetblack-java-utils:一个简单的轻量级 Linq 样式枚举器库,具有针对 Java SE 1.7 开发的流畅 API

    jetblack-java-utils 实用程序的集合。可枚举一个简单的轻量级 Linq 样式枚举器库,具有针对 Java SE 1.7 开发的流畅 API。 我的用例是一个系统,它提供了大量无法复制的数据集合。 Enumerable 类是接口的包装器,...

    超级有影响力霸气的Java面试题大全文档

     Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符...

    robo-fashion:轻松迭代和处理Android稀疏集合

    尽管它们为经典的Java集合世界带来了改进的性能和优化的内存使用,但是在实现最基本的代码片段时,它们有时会变得笨拙。 例如,不支持良好的旧迭代,因此,尽管现在所有Java开发人员都习惯了简短而优雅的语法: ...

    ist的matlab代码-uebung08:练习08

    Map以及内部接口Map.Entry ,它们均在java.util安排。 借助实现Iterable的容器Iterable提供的Iterator ( LinkedList , TreeSet ),您可以使用著名人物的示例来计算有关推文的统计信息。 这项任务的目的 首先,...

Global site tag (gtag.js) - Google Analytics