zoukankan      html  css  js  c++  java
  • Java学习笔记之容器类

         在Java的诸多类中,容器类是一个使用频率极高的类,尤其是其中的ArrayList类和HashMap类。Collection类有包括List,Map还有Set,各自持有自己的特性,他们之间有一点共性就是,由于Collection是Iterable接口的子接口,所以他们之间都有迭代器,使用的方法相同,先由Collection类的对象通过iterator()方法产生一个迭代器,来遍历集合对象中的所有数据。

         此外,从J2SE 1.5开始,集合对象用泛型进行了改写,使用<>来标注集合对象中存储的对象的类型,避免了从集合中取出变量还要进行强制类型转化的繁琐。

    一、List(ArrayList和LinkedList)

         这两个在之前的笔记中已经写过了,这里就不赘述了

    二、Set(HashSet,TreeSet和EnumSet)

          List中的对象是允许重复的,但是Set中的对象都是唯一的,在定义类时,最好从新定义一下equals()和hashCode()方法,因为在比较两个HashSet容器中的对象是否相同的时候,先比较hashCode()然后再利用equals()方法,HashSet容器会对其中的对象进行排序,与被加入的顺序不同。如果使用的是HashSet的子类LinkedHashSet,就可以按照加入的顺序进行迭代。

         TreeSet使用红黑树的结构来对加入的对象进行排序。如果要对对象自定义排序的规则,就要定义一个实现Java.util.Comparator接口的对象,并且实现方法compare().

         EnumSet是针对枚举对象的数据集

    三、Map(HashMap,TreeMap,EnumMap)

          类比Set也有三类

  • 相关阅读:
    中断一个telnet连接
    QQ提示应用程序并行配置不正确,绿色版QQ不能运行解决方法
    新劳动合同法今起实施 正式工与派遣工同工同酬
    最详细的装修施工顺序
    最好的前端hacking备忘录——集锦
    基于vue配置axios
    Vue 实现loading进度条
    Vue 实现countDown倒计时
    使用mongoose操作mongodb数据库
    Vue项目之IE下打开页面是空白
  • 原文地址:https://www.cnblogs.com/ITEagle/p/1680274.html
Copyright © 2011-2022 走看看