zoukankan      html  css  js  c++  java
  • 容器

    容器API在java.util包内。

    Connection:Connection接口定义了存取一组对象的方法,子接口Set和List:

      ----Set:无序且不可以重复----HashSet类

      ----List:有序但可以重复----LinkedList/ArrayList类

    Map:键值对----HashMap/TreeMap类

    容器类对象在调用remove、contains()等方法时,需要比较对象是否相等,这会涉及对象类型的equals()方法和hasCode()方法,对自定义类型,需要重写这两个方法。

      注意:相等的对象应具有相等的hash codes。对象当做map的索引/键的时候,使用hasCode()。

    注意:容器内只能添加对象,不能是基本数据类型,因为基本数据类型一般存在栈里,栈里的内容随时可能被清空,print容器即调用容器和内部元素的toString()。

    Iterator:

      所有实现了Connecttion接口的容器类都有一个iterator方法用以返回一个实现了Iterator接口的对象。

      Iterator对象称作迭代器,用以方便的实现对容器内容元素的遍历操作。(因为不同容器,遍历方法是不同的)

      iterator接口有如下方法:hasNext(),next(),remove()。

    List:

      List接口是Connection的子接口,实现List接口的容器类中的元素是有顺序且可以重复。

      List容器中的元素都对应一个整数型的序号记载其在容器的位置,可以根据序号存取容器元素。

      List容器类有ArrayList,LinkedList等。

      set方法返回被替换的元素对象。

      java.util.Connections类(不是Connection接口)提供了一些静态方法实现了基于List容器的一些算法:

        sort()低到高排序,shuffle()随机排序,reverse()位置逆序排序,fill()用一个对象重写整个List容器,copy()复制,binarySerach()对于顺序List容器,用折半查找对象

    所有可以排序的类都实现了java.lang.Comparable接口,Comparable接口中只有一个方法:

      public int compareTo(Object obj)

    Array读快改慢,Linked改快读慢,Hash两者之间

    Map:

      实现Map接口的类用来存储键值对。

      Map接口的实现类有HashMap和TreeMap等。

      Map类中存储的键值对通过键来标识,所以键值不能重复。

      Map比较用hashCode来比较。

      Map键值都必须为对象,所以基本类型要进行包装。但在java5后支持自动打包解包,Auto-boxing/unboxing,自动将基础类型转换为对象,自动将对象装换为基础类型。自动解包得进行强制类型装换。

  • 相关阅读:
    80.常用的返回QuerySet对象的方法使用详解:order_by
    79.常用的返回QuerySet对象的方法使用详解: filter, exclude,annotate
    78.objects对象所属类原理分析
    69.ORM查询条件:isnull和regex的使用
    北邮 自考 互联网及其应用 考核指导
    北邮 自考 Java语言程序设计(一) 考核指导
    计算机网络自考群
    电气工程及自动化 (独立本科) 自考
    清华大学 研究生 培养方案
    windows10 M557 连接 匹配
  • 原文地址:https://www.cnblogs.com/zawjdbb/p/6233895.html
Copyright © 2011-2022 走看看