关闭

集合相关

标签: iteratorlistvectorhashmapobjectstring
275人阅读 评论(0) 收藏 举报
分类:

1.介绍

2.小结

基于Array的List(Vector,ArrayList)适合查询,而LinkedList(链表)适合添加,删除操作。 
性能上,ArrayList和HashMap分别比Vector和Hashtable要好。
SortedSet和SortedMap接口对元素按指定规则排序,SortedMap是对key列进行排序

3.技巧

1.arraylist 去除重复

Set  set= new HashSet();  
List list = new ArrayList(); 
set.addAll(list); //将list中的值加入set,并去掉重复的abc  

2.Map的遍历
 

//最常规的一种遍历方法
    public static void work(Map<String, Student> map) {
        Collection<Student> c = map.values();
        Iterator it = c.iterator();
        for (; it.hasNext();) {
            System.out.println(it.next());
        }
    }

  //利用keyset进行遍历,
    public static void workByKeySet(Map<String, Student> map) {
        Set<String> key = map.keySet();
        for (Iterator it = key.iterator(); it.hasNext();) {
            String s = (String) it.next();
            System.out.println(map.get(s));
        }
    }

  //比较复杂的一种遍历在这里
    public static void workByEntry(Map<String, Student> map) {
        Set<Map.Entry<String, Student>> set = map.entrySet();
        for (Iterator<Map.Entry<String, Student>> it = set.iterator(); it.hasNext();) {
            Map.Entry<String, Student> entry = (Map.Entry<String, Student>) it.next();
            System.out.println(entry.getKey() + "--->" + entry.getValue());
        }
    }

3.关于排序
    主要是针对TreeMap    利用Key排序   Key为对象  

   思路:其实就是实现Comparable接口

/**
  * TreeMap排序
  * @return
  */
 private TreeMap<ObjectKey,Object> getNewTree(){
  return new TreeMap<ObjectKey,Object>(
     new Comparator<ObjectKey>() {
      public int compare(ObjectKey o1, ObjectKey o2) {
       return o2.getFlowid()-o1.getFlowid(); //排序
      }
    });
 }
 TreeMap sortMap = getNewTree();
 sortMap.put(......)
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    文章存档
    最新评论