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也有三类

  • 相关阅读:
    opencv学习笔记汇总(更新中...)
    C语言字符串基础
    python全栈基础
    吴恩达机器学习008神经元和大脑
    吴恩达机器学习004多元梯度下降
    吴恩达机器学习003矩阵和向量
    吴恩达机器学习002线性回归&梯度下降
    吴恩达机器学习001绪论
    吴恩达机器学习007过拟合&&代价函数&&正则化
    手工(命令行)创建RAC
  • 原文地址:https://www.cnblogs.com/ITEagle/p/1680274.html
Copyright © 2011-2022 走看看