本帖最后由 DryKillLogic 于 2010-10-26 16:27:12 编辑

解决方案 »

  1.   

    ............
    我这里是无序的
    你JDK是哪个版本的
      

  2.   

    纯属巧合:  set2.add(16); 你就会发现顺序不对了, 
      

  3.   


    没有啊,顺序依然对呀,好像它是按照这样的排序规则:对象值-->哈希码-->元素位置
      

  4.   

    多添点- -!   
     Set set = new HashSet();
            for(int i=0;i<100;i++){
                set.add(i);
            }
            System.out.println(set);
      

  5.   

    数据结构那看来的,不知道对不对
    hashcode相同,equals不一定相同
    存入散列本来就是为了节约空间,假如有10个散列桶,可能计算散列值的算法插入6个桶,第七个可能就重复了,
    当你插入数少的时候,都处于不同的桶,用hashcode就可能会按顺序