黑马程序员技术交流社区

标题: hashmap在eclipse和MyEclipse中的排序为何会不同? [打印本页]

作者: syso信任    时间: 2016-6-30 18:10
标题: hashmap在eclipse和MyEclipse中的排序为何会不同?

代码部分:
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ddd {
        public static void main(String[] args) {
                String[] str = {"0","1","9","5","3","4","6"};
                List<String> list1 = new ArrayList<String>();
                Collections.addAll(list1, str);
                Map<String,Integer> map = new HashMap<String, Integer>(list1.size());
                List<String> list = new ArrayList<String>();
                        for(String string:list1){
                                map.put(string, 1);
                        }
                System.out.println( map.entrySet());
        }
}

一个在eclipse中运行,一个是在MyEclipse中运行,jdk版本是1.8.
本人只是初学javase,不太明白,求大神指导

作者: syso信任    时间: 2016-6-30 19:03
赞一个,我也想知道,有人知道吗?
作者: syso信任    时间: 2016-7-1 07:59
有人知道吗?
作者: 柳柳先生    时间: 2016-7-1 13:09

map.entrySet()返回的是一个set,set本身是无序的,底层是一个散列表,你用的jdk版本不同,可能是不同版本的jdk中底层的实现算法变了,换成同一个版本的jdk结果应该是一致的,还有eclipse和myeclipse只是个工具,本身是不具有编译java代码的能力的,还是要靠jdk,只不过相当于的word那样的编辑器让写代码更方便罢了

作者: syso信任    时间: 2016-7-1 13:28
柳柳先生 发表于 2016-7-1 13:09
map.entrySet()返回的是一个set,set本身是无序的,底层是一个散列表,你用的jdk版本不同,可能是不同版本 ...

一直没有注意这些东西,谢谢指导




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2