A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 刘江华 黑马帝   /  2011-10-2 15:17  /  2094 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

还有就是,我写了这两种方式,会不会有性能上的损失呢?
import java.util.*;
public class MapGeneric {

        /**
         * @param args
         */
        public static void main(String[] args) {               
                HashMap<String,Integer> map =new HashMap<String, Integer>();
                map.put("zhansan", 20);
                map.put("lisi",30);
                map.put("wangwu",10);
                Set<String> Kset =map.keySet();
                Iterator ite =Kset.iterator();
                while(ite.hasNext()){
                        String x=(String)ite.next();//倒着打印出来                       
                        System.out.println(x+":  "+map.get(x));
                }
                //换种方式,
                System.out.println("*****************************");               
                Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
                for(Map.Entry<String, Integer> entry: entrySet){
                        System.out.println(entry);//这里以K-V的形式打印。
                }
        }

}

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

4 个回复

倒序浏览
黑马网友  发表于 2011-10-2 15:40:02
沙发
使用第一种方式之所以会倒着打印出来是因为你使用的是Hashmap集合存储数据的,该集合的特点是会按着自然顺序输出元素,例如按着字典顺序。

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-10-2 15:46:05
藤椅

回复 楼主 的帖子

Hashmap集合的特点是自然顺序储存数据。

Iterator ite =Kset.iterator();
                while(ite.hasNext()){
                        String x=(String)ite.next();//倒着打印出来                        
                        System.out.println(x+":  "+map.get(x));
                }
把上面的一段代码换为下面的for语句比较节省内存空间。
换成for(Iterator ite =Kset.iterator(); ite.hasNext();)
{
String x=(String)ite.next();//                     
                        System.out.println(x+":  "+map.get(x));
}

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-10-2 23:43:02
板凳
用 LinkedHashMap
回复 使用道具 举报
黑马网友  发表于 2011-10-3 11:15:27
报纸
谢谢各位了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马