java2_9_集合框架之map结构集合类(hashmap、hashtable).doc
文本预览下载声明
一:HashMap类
注意:HashMap类因为是键值类,所以后面的如果有重复的键值,则它将会主动覆盖前面的。
HashMap输出的遍历信息顺序不一定和输入的一样
例题:
/*
* 作者:田停
* 日期:2013 8 4
* 功能:HashMap的用法
*/
package com.tt;
import java.util.*;
public class Demo10 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建HashMap对象
HashMap hm=new HashMap();
//直接调用Demo9中的Emp
Emp em1=new Emp(t1,1200);
Emp em2=new Emp(t2,1300);
Emp em3=new Emp(t3,1400);
//将em1、em2、em3放入hm中
hm.put(t1, em1);
hm.put(t2, em2);
hm.put(t3, em3);
//查找员工姓名为t2的信息
if(hm.containsKey(t2))
{
System.out.println(有此人);
//取出该人的信息
Emp em=(Emp)hm.get(t2);
System.out.println(该人的姓名为:+em.getName()+ 该人的薪水为:+em.getSal());
}
else
{
System.out.println(无此人);
}
//遍历hm中所有的key和value
//Iterator迭代
Iterator it=hm.keySet().iterator();
//hasNext返回一个boolean
while(it.hasNext())
{
//取出key
String key=it.next().toString();
//通过key输出信息
Emp em=(Emp)hm.get(key);
System.out.println(姓名:+em.getName()+ 薪水:+em.getSal());
}
}
}
运行结果:
有此人
该人的姓名为:t2 该人的薪水为:1300.0
姓名:t3 薪水:1400.0
姓名:t2 薪水:1300.0
姓名:t1 薪水:1200.0
显示全部