zoukankan      html  css  js  c++  java
  • JAVA中集合类的使用

    总的说来常用的集合类有两大类:Collection 和 Map

    1) Collection接口有List和Set两大类子接口,List有ArrayList、LinkedList、Vector子类,Set有TreeSet和HashSet两个子类。

    • ArrayList和LinkedList使用比较类似,存放在里面的元素都是顺序存放。ArrayList相当于普通链表,而LinkedList相当于队列。
    • Vector是一个比较旧的类,从1.0版本就开始出现。
    • Collection接口支持foreach和Iterator输出,而List接口支持ListIterator输出,Vector子类支持Enumeration输出。
    • Set接口的共同特点是不允许元素重复。
    • 而TreeSet和HashSet的区别在于TreeSet有排序功能,而存放在HashSet的元素没有排序。
    • 存放于TreeSet的元素必须实现Comparable接口,因为排序需要调用Comparable接口的方法,实现二叉树排序。
    • 存放于HashSet的元素必须复写Object类中hashCode()和equals()方法。hashCode决定了元素存放的位置,而equals()方法决定了该元素是否存在。

    2)Map接口有HashMap和TreeMap以及Hashtable子类。

      同样的,TreeMap有排序功能,存放于里面的元素必须实现Comparable接口。HashMap没有排序功能,存放于里面的元素必须要复写Object的hashCode和equals方法

    3)所有的Collection子类都支持Iterator和foreach的遍历访问方式。同时注意,尽量不要在iterator遍历的时候修改或者删除元素。

    4)Map接口提供了keySet()和values()方法用于获取所有的key和value

    5)Map接口还提供了entrySet()方法,该方法返回Set<Map.Entry<K,V>>类型的Set,这样可以将Map转换为Set集合进行操作(一般用于输出).

  • 相关阅读:
    I/O中断处理详细过程
    移动端事件touchstart、touchmove、touchend
    页面刷新整理
    transform:rotate在手机上显示有锯齿的解决方案大全
    CSS3盒模型温故
    CSS3颜色特征温故
    CSS3文本温故
    CSS3背景温故
    怪诞咖啡的简介
    CSS3边框温故
  • 原文地址:https://www.cnblogs.com/kuillldan/p/5647216.html
Copyright © 2011-2022 走看看