集合:
Map-Set之间联系
Map集合的所有key集中起来,这些key就是一个set集合
利用Entry<K,V>实现将Set改造成Map
HashMap与HashSet
HashSet采用hash算法决定集合元素的存储位置,HashMap把value当成key的附属值
集合存储中的非对象本身,而是存储的是对象的引用,引用指向实际的java对象
HashMap中put操作,如果元素个数超过Map中的预测值,则HashMap的容量增大一倍
HashMap的实际容量永远是2的n次方,就算设置的指定大小的HashMap,但是实际容量总比设置的大一些,除非设置2的n次方大小
增大/减小HashMap的负载因子可以对HashMap优化
HashSet基于HashMap实现,底层采用HashMap保存所有元素,HashSet中的元素由HashMap中的key保存,而HashMap的value则存储了一个PRESENT,PRESENT是一个静态Object对象
TreeSet底层使用NavigableMap(接口)保存TreeSet集合元素,底层仍然使用TreeMap存储Set的元素
TreeMap采用“红黑树”的排序二叉树来保存Map中的每个Entry(节点)
Map与List
Map中的values就是Map中value的集合,但并不是List对象,而是XXXMap$Values对象,
ArrayList与LinkedList
ArrayList:数组;linkedList:双向链表(栈、队列)
Vector与ArrayList
实现List接口,底层基于数组存储集合元素
ArrayList不直接序列化数组,而是通过readObject方法实现;Vector,提供一个writeObject方法,未完全实现定制序列化
Vector是ArrayList是线程安全版本
相关推荐
在本总结中,我们将深入探讨Collection接口以及其主要子接口和实现类,通过实例来帮助理解它们的特性和使用场景。 1. **Collection接口**:Collection是所有单元素容器的根接口,它定义了集合的基本操作,如添加...
2. **内存管理**:Java自动进行垃圾回收(Garbage Collection),程序员无需手动释放内存,降低了内存泄漏的风险。 3. **异常处理**:Java强制使用try-catch-finally语句块处理异常,增强了程序的健壮性。 **三、...
《Java 基础核心总结》 Java 概述 什么是 Java2 Java 的特点Java 开发环境 JDK JRE Java 开发环境配置 Java 基本语法 数据类型基础语法运算符 Java 执行控制流程条件语句 if 条件语句 if...else 条件语句if...else ...
Java的核心理念是“简单、面向对象、健壮、安全”。 在Java开发语言中,主要包含以下几个核心知识点: 1. **基础语法**:包括变量、数据类型(如整型、浮点型、字符型、布尔型以及引用类型)、运算符(算术、关系...
### 黑马程序员入学Java精华总结 #### 一、Java概述与基础知识 1. **何为编程?** - 编程是指通过编写计算机能够理解的指令来解决问题或完成特定任务的过程。这些指令通常被组织成算法,并使用某种编程语言实现。...
### Java企业级开发综合技能知识总结 #### Java面向对象 1. **super()与this()的区别?** - `super()`用于调用父类构造器,必须作为子类构造器的第一条语句出现。 - `this()`用于调用本类的其他构造器,也必须...
下面是一个简单的示例,演示了如何使用`Collection`接口以及它的方法: ```java import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class CollectionDemo { public ...
### Java中的集合学习总结 #### 集合框架概述 在Java编程语言中,集合框架是一种存储和操作数据的重要机制。它提供了灵活多样的数据结构,以满足不同场景下的需求。集合框架主要由三大核心部分组成:集(Set)、列表...
1. JDK常用的包:Java Development Kit (JDK) 包含了Java运行环境和开发工具,其中核心的几个包如`java.lang`, `java.util`, `java.io`, `java.nio`等,分别用于基础类库,集合框架,输入/输出和非阻塞I/O操作。...
### Java精华总结 #### 一、Java概述与基础知识 ##### 1. 何为编程? 编程是一种通过编写计算机可以理解的指令来解决问题的过程。这些指令是按照特定的语法规则组织起来的,用来指导计算机执行特定任务。 ##### ...
Java集合类框架为开发者提供了丰富的工具箱,使得处理不同场景下的数据变得简单高效。理解集合类的基本概念和用法对于每一个Java开发者来说都是必不可少的技能。通过本文的介绍,希望能帮助读者建立起对Java集合框架...
【Java面试题总结】 在Java面试中,面试官通常会关注候选人的基础知识、问题解决能力以及对Java特性的理解。以下是一些常见的Java面试题目及其详细解析: **一、JDK常用的包** JDK(Java Development Kit)是开发...
本文将详细介绍`Collection`接口及其主要实现类,并提供简单的实例来帮助理解。 首先,`Collection`接口是所有单列集合的父接口,它提供了对集合的基本操作,如添加、删除和检查元素。在Java中,`Collection`有两个...
### Java EE面试总结知识点 #### 1. Java.util.* 包的UML结构图 - **Collection**: 这是所有集合类的根接口,包括List、Set和Map等。 - **List**: 有序集合,元素可以重复。 - **LinkedList**: 使用双向链表实现...
### Java面试题总结知识点 #### 1. J2EE是什么? - **定义**:J2EE(Java 2 Platform, Enterprise Edition)是一个基于Java SE平台的企业级应用开发平台标准,由Sun Microsystems制定。 - **组成**:J2EE平台包含...
### Java基础核心总结 #### Java概述 ##### 什么是Java? Java是一种广泛使用的高级编程语言,由Sun Microsystems(现为Oracle公司的一部分)于1995年发布。它被设计成能够在任何支持Java的设备上运行,这得益...
通过以上总结,我们可以看到Java集合框架为Java开发者提供了极其丰富的工具箱,无论是处理简单的数据结构还是复杂的键值对映射,都有合适的选择。了解并熟练掌握这些概念和技术,对于提高编程效率和编写高质量的Java...
这份"JAVA重点知识总结.pdf"涵盖了Java的基础知识,包括数据类型、异常处理、集合框架、多线程以及方法重载和覆盖等多个核心概念。接下来,我将详细解析这些知识点。 1. **Java基本数据类型**:Java提供了四种类型...