------- android培训、java培训、期待与您交流! ----------
package com.itheima;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Demo6 {
/**
* map集合的使用、取出集合元素的两种方法
* @param args
*/
public static void main(String[] args) {
Map<String,Integer> map = new HashMap<String,Integer>();
map.put("wangcai", 25); //添加元素
map.put("lisii", 30);
map.put("xiaoqiang", 27);
map.put("peidi", 26);
// System.out.println(map);
// System.out.println(map.get("wangcai")); //通过键获取值
// System.out.println(map.get(30)); //不能通过值获取键 如果获取的键不存在返回的是null
getElements(map);
getElements2(map);
getElements3(map);
}
/*
* 只获取map集合的值 通过values()方法获得Collection集合
* 因为值是不唯一的,所以返回的不是Set集合
*/
private static void getElements3(Map<String, Integer> map) {
Collection<Integer> coll = map.values();
Iterator<Integer> it = coll.iterator();
while(it.hasNext()){
System.out.print(it.next()+";");
}
}
/*
* 第二种取出map键值对的方法 entrySet()
*/
private static void getElements2(Map<String, Integer> map) {
Set<Map.Entry<String, Integer>> entryset = map.entrySet(); //通过entrySet方法获取封装键值对的对象
Iterator<Map.Entry<String, Integer>> it = entryset.iterator(); //获取迭代器对象
while(it.hasNext()){
Map.Entry<String, Integer> me = it.next(); //获取封装键值对的对象
String key = me.getKey(); //通过getKey getValue方法获取键与值
int value = me.getValue();
System.out.println(key+":::--"+value);
}
}
/*
* 第一种取出map键值对的方法 keySet方法
*/
private static void getElements(Map<String, Integer> map) {
Set<String> keyset = map.keySet(); //通过ketSet()方法得到键的Set集合
Iterator<String> it = keyset.iterator(); //取得迭代对象
while(it.hasNext()){
String key = it.next(); //获取键
int value = map.get(key); //通过键获得对应的值
System.out.println(key+":::"+value);
}
}
}