list和set的拉拉扯扯的关系

list和set的异同点

1、相同点,list和set均继承自collection类,

2、不同:

   list:有元素放入的顺序,元素可以重复;

  set:无顺序,不可以重复,虽然无顺序,但位置有HashCode决定,则位置其实是固定的;

set可以转换成list吗?当然可以。

方法一:

Map<String, String> map = new HashMap<String, String>();  
map.put("ele1", "小樱");  
map.put("ele2", "若曦");  
map.put("ele3", "晴川");  
Set<String> set = map.keySet();  
  
//Set转List,方法一 : ArrayList(Collection<?> c)   
List<String> list1 = new ArrayList<String>(set);  
for(int i = 0; i < list1.size(); i++){  
    System.out.println("list1(" + i + ") --> " + list1.get(i));  
}  
  
//Set转List,方法二:List实现类(ArrayList/LinkedList)的方法  -- addAll(Collection<?> c)   
List<String> list2 = new ArrayList<String> ();  
list2.addAll(set);  
for(String elem : list2){  
    System.out.println(elem);  
}

 

posted @ 2016-06-27 10:24  logo_mm  阅读(220)  评论(0编辑  收藏  举报