最近做一个项目,感觉自己的Java基础实在太差,不得不补补,所以又回来学习了一下Map,做了一下笔记
Map<K,V>必须要有泛型
实现的子类有HashMap,TreeMap,HashTable
TreeMap是按照Key值排序的子类
集合可以通过Iterator输出,而Map不能通过Iterator输出
虽然Map是K,V存放,但真正的还是将K,V存放到一个对象中去,这个对象就是Map.Entry
Map集合当中存放了一个个Map.Entry对象
有泛型,得Map<String,Double> map=new HashMap<String,Double>();
注意:根绝键Key取得值Value
如果Key有重复的值,则会把之前的值给覆盖了
主要方法有
keySet() 返回此映射中包含的键的 Set 视图。
Set<String> set=map.keySet();
将Map转换为Set集合,取得Map中所有的Key值
values() 返回此映射中包含的值的 Collection 视图。
Collection<Double> col=map.values();
取出全部的value值
entrySet() 返回此映射中包含的映射关系的 Set 视图。
最重要的是把值迭代出来
Iterator<Double> iter=col.iterator();
While(iter.hasnext())
{
System.out.println(iter.next());
}
package com.wzx.map;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class HashMapDemo {
/**
* @param args
* 泛型使用<String,Double>
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Map<String,Double> map=new HashMap<String,Double>();
map.put("王振兴", 20001.0);
map.put("ChinaJweb", 200002.0);
IterEntry(map);
}
//取得Map中所有的Key值
public static void getKey(Map<String,Double> map)
{
Collection<String> col=map.keySet();
Iterator<String> iter=col.iterator();
while(iter.hasNext())
{
System.out.println(iter.next());
}
}
//取得Map中所有的Value值
public static void getValues(Map<String,Double> map)
{
Collection<Double> col=map.values();
Iterator<Double> iter=col.iterator();
while(iter.hasNext())
{
System.out.println(iter.next());
}
}
//循环迭代Map中得K,V
public static void IterEntry(Map<String,Double> map)
{
Set<Map.Entry<String,Double>> allSet=map.entrySet();
Iterator<Map.Entry<String,Double>> iterSet=allSet.iterator();
while(iterSet.hasNext())
{
Map.Entry<String,Double> ME=iterSet.next();
System.out.println(ME.getKey()+"----->"+ME.getValue());
}
}
}
分享到:
相关推荐
### List接口和Map接口详解 #### 一、Java集合框架概览 Java集合框架是Java标准库的一个核心组成部分,用于处理各种数据结构如列表、集合和映射等。该框架提供了一组统一的接口和实现,使开发人员能够高效地管理和...
### Java软件开发实战:Map接口详解 #### 一、Map接口概述 Map接口是Java集合框架中的一个重要组成部分,用于存储键值对(key-value pairs)。Map接口与其他集合接口(如List和Set)不同之处在于,它允许每个键...
### Map接口详解 #### 1. Map接口概览 `Map`接口是Java集合框架中的一个重要组成部分,主要用于存储键值对。与`Collection`接口不同,`Map`接口中的元素是以键值对的形式存在的,其中键是唯一的。`Map`接口提供了一...
STL中的`map`是一个强大的数据结构,它为键值对的存储提供了高效且便捷的接口。熟练掌握`map`的用法,能极大地提升C++编程的效率和代码质量。通过了解插入、查找、更新、删除等基本操作以及遍历和查找辅助函数,...
### Java中的Map接口详解 #### 一、Map接口概述 Map接口是Java集合框架中的一个核心接口,它并不属于`Collection`接口体系。Map的主要功能是存储键值对(key-value pairs),其中键(key)不允许重复,而值(value...
### GoogleMap与BingMap接口分析 #### 一、GoogleMap API详解 ##### 1.1 前言 在地图开发领域,Google Maps API 是一个广泛使用的工具集,为开发者提供了丰富的功能来构建交互式地图应用。这些API不仅支持基本的...
Collection接口是Java集合框架的根接口,定义了基本的集合操作,而Map接口继承自Collection接口,提供了键值对的存储和操作。 Collection接口 Collection接口是Java集合框架的根接口,定义了基本的集合操作,包括...
配置 Route-Map 详解 Route-Map 是一种路由选择策略,允许 Network Administrator 根据不同的路由策略来选择路由。Route-Map 通常用于路由重发布、路由选择、路由过滤等场景。 配置 Route-Map 的步骤: 1. 配置...
### Map接口详解 `Map`接口用于表示键值对的集合,每个键都是唯一的,用于快速定位其对应的值。`Map`的主要实现包括: - `HashMap`:基于哈希表实现,提供O(1)的平均时间复杂度进行键值对的添加、删除和查找操作。...
### ATL接口映射宏详解 #### 序言与背景 在深入探讨ATL(Active Template Library)中的接口映射宏之前,我们先简要回顾一下ATL的基本概念及其在组件对象模型(COM)中的作用。ATL是一个由Microsoft开发的模板库,...
Collection接口代表单值容器,而Map接口则用于存储键值对。 #### 容器的分类 1. **Collection**:这是所有单值容器的父接口,包括List和Set。 2. **List**:有序的容器,允许重复元素,支持索引访问。 3. **Set**...
#### 三、Map接口详解 - **HashMap**: - 特点:基于数组+链表/红黑树实现,在JDK1.8中优化了处理哈希冲突的方式。 - 适用场景:当需要高性能的键值对存储时使用。 - 缺点:不是线程安全的。 - **TreeMap**: ...
- 在Web服务接口的Map参数前使用注解`@WebParam`指定参数,并使用`@XmlJavaTypeAdapter`注解来关联`MapAdapter`。这样,当调用Web服务时,CXF会使用`MapAdapter`进行自动的序列化和反序列化。 ```java @WebMethod ...
Map接口不继承Collection,因为它不是单一元素的容器,而是键值对的容器。HashMap是Map接口最常见的实现,使用哈希表提供快速的查找;TreeMap实现了SortedMap接口,保持键的自然顺序或自定义顺序;LinkedHashMap则...
Map 接口中定义了一些常用的方法,例如: * put(K key, V value):添加键值对 * get(Object key):获取键对应的值 * remove(Object key):删除键值对 * size():返回 Map 的大小 在 Java 中,集合框架是非常重要的...
Java编码辅助工具Mapstruct用法详解 Mapstruct是一个Java编码辅助工具,主要用于简化Java Bean之间的转换工作。通过使用Mapstruct框架,可以简洁方便地完成Bean之间的转换工作,免去了手动编码setter/getter的烦恼...