Java 集合类共25篇

Java 集合框架是后端开发中处理数据结构的核心模块之一。Java 集合面试题的考察重点包括 List、Set、Map 等常用集合类的底层实现、遍历方式、集合的线程安全性、集合类的性能对比、常见集合的扩容机制、ConcurrentHashMap 的并发处理以及集合与数组的互操作。

面试题:Java 中的 TreeMap 是什么?

TreeMap 是 Java 中 Map 接口的一种实现,它位于 java.util 包中。与 HashMap 不同,TreeMap 使用红黑树(Red-Black tree)这种自平衡二叉查找树的数...
程序百科的头像-程序百科程序百科4个月前
435

面试题:Java 中的 List 接口有哪些实现类?

Java 中的 List 接口是集合框架的一部分,用于存储有序的集合,并允许重复的元素。它有多个实现类,每个实现类都有其特定的应用场景和特性。以下是几种常见的 List 接口的...
程序百科的头像-程序百科程序百科4个月前
415

面试题:Java 中的 LinkedHashMap 是什么?

LinkedHashMap 是 Java 中 Map 接口的一种实现,它继承自 HashMap 类,并且位于 java.util 包中。LinkedHashMap 不仅保留了 HashMap 的快速查找特性,还通过维护一个双向链表来记录元素的插入顺...
程序百科的头像-程序百科程序百科4个月前
226

面试题:数组和链表在 Java 中的区别是什么?

数组和链表是两种基础的数据结构,在 Java 中它们有着不同的特性和使用场景。以下是数组和链表的主要区别: 1. 数据存储方式 数组:在内存中是连续存储的,这意味着每个元素都紧挨着前一个元素...
程序百科的头像-程序百科程序百科4个月前
4811

面试题:JDK 1.8 对 HashMap 除了红黑树还进行了哪些改动?

在 JDK 1.8 中,除了引入红黑树(用于优化链表过长时的查询效率)外,HashMap 还进行了多项重要改动,以下是主要的优化点: 1. 哈希函数的优化 改进计算方式:在 JDK 1.7 中,HashMap 的哈希值...
程序百科的头像-程序百科程序百科4个月前
4215

面试题:Java 中有哪些集合类?请简单介绍

Java 提供了丰富的集合框架(Collections Framework),它包括了一系列用于存储和操作对象组的接口和类。以下是 Java 集合框架中一些主要的集合类及其简单介绍: 1. List 接口实现类 ArrayList...
程序百科的头像-程序百科程序百科4个月前
535

面试题:为什么 JDK 1.8 对 HashMap 进行了红黑树的改动?

JDK 1.8 对 HashMap 引入红黑树的主要目的是优化极端情况下哈希冲突导致的性能问题,通过将链表转换为红黑树,将最坏情况下的时间复杂度从 O(n) 降低到 O(log n),从而显著提升性能。以下是详细...
程序百科的头像-程序百科程序百科4个月前
425

面试题:Java 的 CopyOnWriteArrayList 和 Collections.synchronizedList 有什么区别?分别有什么优缺点?

CopyOnWriteArrayList 和 Collections.synchronizedList() 都是 Java 中用于实现线程安全的列表操作的方式,但它们的工作机制、适用场景和性能特点有着显著的不同。以下是两者的...
程序百科的头像-程序百科程序百科4个月前
237

面试题:你遇到过 ConcurrentModificationException 错误吗?它是如何产生的?

ConcurrentModificationException 是 Java 中常见的运行时异常之一,通常在不当修改集合(如 List、Set 或 Map)时抛出。这种错误特别容易在多线程环境下出现,但单线程程序也可能触发它。 如何...
程序百科的头像-程序百科程序百科4个月前
496

面试题:为什么 Java 中 HashMap 的默认负载因子是 0.75?

Java 中 HashMap 的默认负载因子(Load Factor)设置为 0.75,这是一个经过数学分析和工程实践验证的折中值,旨在在 空间利用率 和 时间性能 之间取得最佳平衡。以下是详细解释: 1. 负载因子的...
程序百科的头像-程序百科程序百科4个月前
536