`

java集合学习笔记

阅读更多
java集合框架如图(附件)


从集合框架图中可以看出,分为两类
以Collection为接口的元素集合类型,以Map为接口的映射集合类型

Collection类型又分为两大类Set和List
所有集合的实现类都不是直接实现集合类接口,而是都继承一个相应的抽象类
Set集合的特征:就是元素无重复,但是无序(所以Set接口以及实现类没有按位置index操作的添加、删除、访问方法)
List集合的特征:集合有序排列,可以有重复元素,可以随机访问(使用位置index添加、删除、访问元素)
List的实现类有ArrayList,LinkedList,这两个都是非线程安全的,Vector是线程安全的List实现类,Stack是vector的子类
ArrayList的内部实现是基于内部数组Object[],所以从概念上讲,它更像数组,但LinkedList的内部实现是基于一组连接的记录,所以,它更像一个链表结构
在ArrayList的前面或中间插入数据时,必须将其后的所有数据相应的后移,这样必然要花费较多时间,所以,当你的操作是在一列数据的后面添加数据而不是在前面或中间,并且需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;
而访问链表中的某个元素时,就必须从链表的一端开始沿着连接方向一个一个元素地去查找,直到找到所需的元素为止,所以,当你的操作是在一列数据的前面或中间添加或删除数据,并且按照顺序访问其中的元素时,就应该使用LinkedList了。
Set的实现类有HashSet,TreeSet以及子类LinkedHashSet,这三个类是非线程安全的
TreeSet是基于树结构的集合,LinkedHashSet具备按照插入先后顺序访问的功能,HashSet访问元素的顺序是不确定的,TreeSet的访问顺序是按照树接口的顺序访问的
Map的实现类有HashMap,IdentityHashMap,WeakHashMap,TreeMap,以及LinkedHashMap子类,这些类都是非线程安全的,
WeakHashMap是一种改进的HashMap,它对key实行“弱引用”,如果一个key不再被外部所引用,那么该key可以被GC回收。
HashTable是线性安全的,HashTable不能插入null空元素
  • 大小: 11.3 KB
  • 大小: 11.3 KB
分享到:
评论

相关推荐

    Java集合学习笔记.pdf

    Java集合学习笔记.pdf

    java集合学习笔记2018.5.10

    本篇笔记主要介绍了Java集合的基本概念、ArrayList集合的使用以及集合的继承关系。 首先,Java集合是一个容器,它允许我们存储多个对象。与数组不同,集合的长度是可变的,可以存储不同类型的对象。集合框架是这些...

    Java集合框架学习笔记

    Java集合框架是Java编程语言中一个至关重要的组成部分,它提供了数据结构和算法的抽象,使得开发者可以方便地存储和管理各种类型的数据。本篇将详细探讨Java集合框架的基础知识,包括核心接口、类的层级结构以及Java...

    Java基础 学习笔记 Markdownr版

    本学习笔记主要涵盖了Java的基础知识,包括面向对象、集合、IO流、多线程、反射与动态代理以及Java 8的新特性等方面,旨在帮助初学者或有经验的开发者巩固和提升Java编程技能。 1. 面向对象(OOP):Java的核心是...

    集合框架学习笔记

    这篇学习笔记将深入探讨Java集合框架的基础概念、主要类库以及常见应用场景。 首先,Java集合框架分为两种基本类型:List(列表)和Set(集)。List接口代表有序的集合,允许重复元素,如ArrayList和LinkedList;而...

    java学习笔记markdown

    【Java学习笔记Markdown版】是针对Java初学者和进阶者的一份详尽教程,以Markdown格式编写,便于阅读和整理。Markdown是一种轻量级的标记语言,它允许用户使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML...

    Java入门学习笔记

    "Java入门第二季学习笔记"可能深入到更复杂的主题,如异常处理、集合框架、IO流和线程。异常处理是Java中处理错误的重要机制,使得程序更加健壮。集合框架包括ArrayList、LinkedList、HashSet、HashMap等数据结构,...

    Java 学习笔记Java学习笔记

    4. 集合框架:Java集合框架是用于存储和操作对象的工具,包括List(如ArrayList和LinkedList)、Set(如HashSet和TreeSet)、Map(如HashMap和TreeMap)等接口及其实现类。它们提供了丰富的API用于添加、删除、查找...

    Java开发学习笔记

    Java开发学习笔记主要针对的是初学者,旨在帮助他们掌握Java编程的基础知识。下面将详细讲解Java开发中的核心概念和步骤。 一、Java环境变量设置 在开始Java编程之前,我们需要安装Java Development Kit (JDK)并...

    Java学习笔记——良葛格

    "Java学习笔记——良葛格"是一份专为初学者设计的教程资料,由良葛格精心编写,旨在帮助读者掌握JDK5.0版本的Java基础知识。JDK(Java Development Kit)是Java开发的核心工具集,包含了编译器、调试器和运行环境等...

    JAVA学习笔记 林信良

    此外,《JAVA学习笔记》还涵盖了集合框架,包括ArrayList、LinkedList、HashSet、HashMap等各种集合类的使用,以及泛型、迭代器和流API的应用。这些内容对于处理数据和实现复杂算法至关重要。 对于多线程编程,书中...

    java基础学习笔记.doc

    5. **集合类ArrayList**:ArrayList是Java集合框架的一部分,它是一个动态数组,长度可以随需要改变。`ArrayList<String> list = new ArrayList();` 创建了一个存储String类型元素的ArrayList。`list.add()`, `list....

    java学习笔记比较全面

    本篇笔记旨在为初学者提供一个全面的Java学习指南,涵盖了语言的基础概念和技术。 1. **面向对象编程三大原则** - **封装**:封装是将数据和操作这些数据的方法绑定在一起,形成一个独立的单元,对外部世界隐藏...

    java基础学习笔记

    ### Java基础学习笔记知识点 #### 一、Java学习路线概览 Java学习通常分为几个阶段,从基础到高级,逐步深化。以下是对给定文件中提到的学习路线的详细解析: ##### 第一阶段:Java基础 - **JAVASE**:Java标准版...

    Java学习笔记(源码)

    4. **集合框架**:Java集合框架是存储和操作对象的重要工具,包括ArrayList、LinkedList、HashSet、HashMap等。学习笔记会详细解析各种集合类的特性和使用场景。 5. **输入/输出(I/O)**:Java I/O流用于读写文件、...

    Java JDK 7学习笔记 PDF

    这个PDF学习笔记是开发者深入理解JDK 7特性和功能的重要参考资料。以下是对Java JDK 7的一些核心知识点的详细阐述: 1. **泛型改进**:在JDK 7中,泛型的使用更加灵活,引入了类型推断(Type Inference)特性,通过...

    Java学习笔记PPT

    Java集合框架是处理数据的重要工具,包括List、Set、Queue和Map等接口,以及ArrayList、LinkedList、HashSet、HashMap等实现类。PPT可能会介绍它们的区别、用法以及如何根据需求选择合适的集合类型。 异常处理是...

    java超强学习笔记

    4. **集合框架**:Java集合框架是处理对象集合的重要工具,包括List、Set、Map等接口及其实现类,如ArrayList、LinkedList、HashSet、HashMap等。 5. **IO流与NIO**:Java的IO流和NIO(非阻塞I/O)用于读写数据,...

Global site tag (gtag.js) - Google Analytics