`
susiya
  • 浏览: 91095 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java Collection Framework 学习笔记

    博客分类:
  • Java
 
阅读更多

1. Use Iterator instead of the for-each construct when you need to:

a. Remove the current element. The for-each construct hides the iterator, so you cannot call remove. Therefore, the for-each construct is not usable for filtering.
b. Iterate over multiple collections in parallel.

for (Iterator<String> i = c.iterator(); i.hasNext(); )
      if (i.next().length() == 4)
        i.remove();

 

 2. bulk operation

a. removeAll()

c.removeAll(Collections.singleton(e));

More specifically, suppose you want to remove all of the null elements from a Collection.

c.removeAll(Collections.singleton(null));

 

3. Map Interface

a. Comparison to Hashtable 

  • Map provides Collection views instead of direct support for iteration via Enumeration objects. Collection views greatly enhance the expressiveness of the interface, as discussed later in this section.
  • Map allows you to iterate over keys, values, or key-value pairs; Hashtable does not provide the third option.
  • Map provides a safe way to remove entries in the midst of iteration; Hashtable did not.
  • Hashtable has method contains, but Map has containsValue parallels containsKey.
  •  

    4. Implementations

     

    General-purpose Implementations Interfaces Hash table Implementations Resizable array Implementations Tree Implementations Linked list Implementations Hash table + Linked list Implementations
    Set HashSet   TreeSet   LinkedHashSet
    List   ArrayList   LinkedList  
    Queue          
    Map HashMap   TreeMap   LinkedHashMap

     

    Queue implementation include LinkedList and PriorityQueue.

     

    5. Convenience Implementations

    a. Arrays.asList

    b. Immutable Multiple-Copy List

        Collections.nCopies

    c. Immutable Singleton Set

        Collections.singleton

    d.Empty Set, List, and Map Constants

        The Collections.emptySet, Collections.emptyList, and Collections.emptyMap.

    分享到:
    评论

    相关推荐

      Java集合框架学习笔记

      进入Java集合框架的核心,我们有四个主要接口:`Collection`、`List`、`Set`和`Map`。`Collection`是最基础的接口,它是所有集合的父接口,但它不提供`get()`方法,通常我们通过`Iterator`遍历`Collection`。`List`...

      良葛格Java JDK 5.0学习笔记

      良葛格的Java JDK 5.0学习笔记详细讲解了这个版本的关键知识点,非常适合初学者和有经验的开发者回顾。下面我们将深入探讨其中的重要内容。 1. **自动类型转换与变量声明(Generics)** Java 5.0引入了泛型,允许...

      java学习笔记

      本篇“Java学习笔记”聚焦于面向对象编程这一核心概念,是学习Java的宝贵资料。 面向对象编程(Object-Oriented Programming, OOP)是Java的基础,它将程序分解为独立的对象,每个对象都有自己的属性(数据)和行为...

      jsp二期学习笔记(北大青鸟二期学习)

      #### Java集合框架(Collection Framework) Java集合框架提供了一组用于存储和操作对象的接口和类。主要包括`Collection`和`Map`两个顶级接口。 1. **Collection**:这是一个顶级接口,表示一组对象,这些对象...

      李兴华2012最新JAVA笔记

      类集框架、JDBC.pdf**:类集框架(Collection Framework)是Java中用于存储和操作数据的工具,包括List、Set、Map接口及其实现。JDBC(Java Database Connectivity)则是与数据库交互的标准API,讲解了如何连接...

      JAVA认证-SCJP阅读笔记

      【JAVA认证-SCJP阅读笔记】是一份详细整理的备考SCJP(SUN Certified Java Programmer)的资料,涵盖了Java编程的基础知识。以下是笔记中的主要内容: 1. 合法的程序入口点(Main)与命名规则: - 主方法(main)...

      Framework学习文档

      Framework学习文档是关于Struts2、Mybatis、JavaScript和jQuery的详细笔记,涵盖了这些技术的基本概念、架构、配置、使用方法等方面的知识点。 一、Struts2框架 1. Struts2是典型的MVC框架,在整个MVC框架中充当...

      lego2学习手册 ( LEGO框架学习笔记)

      本手册将详细介绍LEGO框架的学习和使用,重点在于理解其操作步骤和核心组件。 首先,LEGO框架的核心操作流程分为以下几个步骤: 1. **UML类图生成**:使用特定工具根据UML类图自动生成Java类和持久化对象接口。这...

      C语言数据结构全部算法.zip

      描述中提到的"大学生 C/C++/JAVA/Python数据结构学习笔记和资料大全"表明这个资源不仅针对C语言,还涵盖了C++、Java和Python的数据结构学习。这四个语言在数据结构上的差异主要体现在面向对象特性、内存管理和库支持...

      C#.net

      在【压缩包子文件的文件名称列表】中,有一个名为"C#.doc"的文件,这可能是一个包含详细教程或者笔记的Microsoft Word文档,涵盖了C#.net的基本概念、语法和实践案例,对学习者来说是一份宝贵的资料。

      YuanGoLearnSomething:一个存储我的知识,我的笔记和日常生活想法的地方

      【标题】: "YuanGoLearnSomething:个人知识...综上所述,YuanGoLearnSomething项目很可能包含了关于C#语言的各种学习笔记,涵盖了从基础知识到高级特性的全面讲解,对于学习和巩固C#知识的用户来说是一份宝贵的资源。

    Global site tag (gtag.js) - Google Analytics