java集合类Map

来源:互联网 发布:mac自带的图片编辑器 编辑:程序博客网 时间:2024/04/29 14:09

Map的实现类有Hashtable、HashMap、TreeMap

1)HashTable

//下面是应用java散列表的一个例子import java.util.*;class Counter{int i;public String toString(){return Integer.toString(i);}}public class Statistics {public static void main(String[] args){Hashtable ht=new Hashtable();for(int i=0;i<1000000;i++){Integer r=new Integer ((int)(Math.random()*20)); if(ht.containsKey(r)){((Counter)ht.get(r)).i++;}else{ht.put(r, new Counter());}}System.out.println(ht);}}
2)HashMap

import java.util.*;public class ExampleHashMap {//用Map声明引用HashMap对象Map calendar = new HashMap();//将元素对加入到Map引用的对象当中public ExampleHashMap(String d[],String i[]){for(int x=0;x<d.length;x++){calendar.put(d[x], i[x]);}}public static void main(String args[]){//待加入的数据String[] dates ={ "10/31/01","01/01/01","03/05/01","02/04/01"};String[] items= { "Halloween" ,"New Years" ,"Birthday" ,"Anniversary"};//创建对象实例ExampleHashMap example =new ExampleHashMap(dates,items);//输出Map引用对象中的key和value对System.out.println("map="+example.calendar);//将Map中的key/value对映射成set集合Set mappings = example.calendar.entrySet();System.out.print("object\t\tkey\t\tvalue");for(Iterator i =mappings.iterator();i.hasNext();){Map.Entry me=(Map.Entry)i.next();Object ok=me.getKey();Object ov=me.getValue();System.out.print(me+"\t");System.out.print(ok+"\t");System.out.println(ov);}}}

3)TreeMap

import java.util.*;public class ExampleTreeMap {Map calendar =new TreeMap();public ExampleTreeMap(String d[],String i[]){for(int x=0;x<d.length;x++)calendar.put(d[x], i[x]);}public static void main(String args[]){String[] dates ={ "10/31/01","01/01/01","03/05/01","02/04/01"};String[] items= { "Halloween" ,"New Years" ,"Birthday" ,"Anniversary"};ExampleTreeMap example =new ExampleTreeMap(dates,items);System.out.println("map="+example.calendar);Set mappings = example.calendar.entrySet();System.out.print("object\t\tkey\t\tvalue");for(Iterator i =mappings.iterator();i.hasNext();){Map.Entry me=(Map.Entry)i.next();Object ok=me.getKey();Object ov=me.getValue();System.out.print(me+"\t");System.out.print(ok+"\t");System.out.println(ov);}}}



0 0
原创粉丝点击