把一个ArrayList写入到set里去后,有什么方法能让set里的元素顺序和ArrayList里的元素顺序保持不变吗?

解决方案 »

  1.   

    LinkedHashSet
    前提LIST不存在重复的元素
      

  2.   

    放到set中重复元素就没有了!
      

  3.   

    package com.xuz.datastruct.csdn;import java.util.ArrayList;
    import java.util.LinkedHashSet;
    import java.util.List;
    import java.util.Set;public class LinkedHashSetTest { public static void main(String[] args) {
    List<String> list = new ArrayList<String>();
    list.add("1");
    list.add("2");
    list.add("4");
    list.add("3");
    list.add("5");

    Set<String> set = new LinkedHashSet<String>();
    for (String str : list) {
    set.add(str);
    }

    System.out.println(set);
    }}
    怎么不行了?
      

  4.   


    foreach循环可以用set.addAll(list);代替
    结构也是一样的。