Map接口详解

最近做一个项目,感觉自己的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());
}
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值