zoukankan      html  css  js  c++  java
  • java-集合1

    浏览以下内容前,请点击并阅读 声明

    集合(collection),可以看做一个容器,是将多个元素组合成一个单位的对象。集合用来存储,检索,操作,交互一些聚集的数据。通常,集合用来表示一个组的数据,就像一副牌,一个邮箱,一个电话本等的作用。

      java集合框架

      集合框架是一个能够表示和操作集合的统一结构,所有的结合框架包含如下组成部分:

    • 接口 用来代表集合的抽象数据类型。
    • 实现类 用来实现上述接口的实现类,可重复使用
    • 算法 对于集合有一些使用的运算方法,比如对于集合的搜索,分类等。

     接口

      核心的集合接口封装了不同的集合类型,是集合框架的基础,如下图所示:

      Set是一种特殊的Collection,而SortedSet是一种特殊的Set,以此类推,注意,Map不属于Collection,此外所有的集合类型都是泛型。

    • Collection:它是集合的根节点,一个集合代表一组对象,Collection接口含有所有集合的共同点(最少的共同点),如果需要使用集合的最大共性,则需要使用Collection接口,有的集合可以出现相同的元素,而有的则不可以,元素也可以是有序或者无序的,java并不提供实现该接口的类,但是为更具体的集合接口提供了实现的类,如Set和List。
    • Set:一个不可以包含重复元素的集合接口,类似于数学上的集,典型的Set有扑克牌(每张牌唯一),学生的评分等级,机器的程序等等。
    • List:一个有序的集合,List可以包含重复的元素。List通常被应用于控制元素存放的位置,并按照元素的位置索引使用,实现类如Vector。
    • Queue:用于在处理多个元素之前存储的容器,除了基本的Collection的功能,Queue还提供了额外的插入,获取和检查的方法,Queue一般按照先进先出的原则排列元素(FIFO),但也可提供比较的方法或者按照元素的自然顺序排列,每一个Queue接口的实现类必须指定其排序信息。
    • Deque:用于在处理多个元素之前存储的容器。
    • Map:能够存储多个键-值对应关系元素的集合。Map不能包含重复的键,一个键仅能对应最多一个值。

    另外还有两种集合:

    • SortedMap:一种特殊的Set,其元素按照升序排列,其中包含了一些对于排序的高级的操作。
    • SortedMap:一种特殊的Map,其元素按照键的升序排列,有序映射被应用于自然排序的含有键-值对的集合。

    注意:一般定义变量时,建议使用一些标准的接口类型,因为这样可以是你能够通过更改构造器而灵活的更改实例对象,而无需更改过多代码,但是这样会有一些局限性,对于一些非标准的操作(接口未声明的方法),虽然在实现类中有,但是不能通过对应的标准接口使用。

  • 相关阅读:
    【翻译九】java-同步方法
    【翻译八】java-内存一致性错误
    【翻译七】java-同步
    【翻译六】java-连接和实例
    【翻译五】java-中断机制
    【翻译四】java-并发之线程暂停
    [topcoder]TheGridDivTwo
    [topcoder]TheConsecutiveIntegersDivOne
    [leetcode]Maximum Product Subarray
    [leetcode]Find Minimum in Rotated Sorted Array
  • 原文地址:https://www.cnblogs.com/justforcon/p/6035392.html
Copyright © 2011-2022 走看看