HashMap,存储的是键值对,非常实用。
使用案例:给定一个文件和一个字符串,判断文件是否包含该字符串,如果包含,请打印出包含该字符串的行号以及该行的全部内容。将行号和行内容存入hashMap中,行号作为key,行内容作为value,最后遍历hashMap即可。
讲一下在java中使用HashMap的两种遍历方法,代码如下:
第一种:
- HashMap hashmap = new HashMap();
- Iterator iterator = hashmap.keySet().iterator();
- while (iterator.hasNext()) {
- Object value = hashmap.get(iterator.next());
- }
第二种:
- HashMap hashmap = new HashMap();
- Iterator iter = hashmap.entrySet().iterator();
- while (iter.hasNext()) {
- Entry entry = (Entry) iter.next();
- Object value= entry.getValue();
- Object key =entry.getKey();
- }
亲测效率:
long startTime=System.currentTimeMillis(); //获取开始时间
dosomething();
long endTime=System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间: "+(endTime-startTime)+"ms");
当文件行数为30000时,就能明显看出效率高低了,方法一执行需要173ms , 方法二执行只需要126ms,由此可以看出方法二的效率高