Java 集合类共48篇

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

面试题:简述 如何边遍历边移除 Collection 中的元素 ?

在Java中,直接尝试在遍历Collection的同时对其进行结构上的修改(如添加或删除元素)会导致ConcurrentModificationException异常。这是因为大多数集合类都实现了“快速失败”机制来检测并发修...
程序百科的头像-程序百科程序百科1个月前
0347

面试题:简述迭代器 Iterator 是什么 ? Iterator 怎么使用?有什么特点?

什么是 Iterator(迭代器)? 在Java中,Iterator是一个用于遍历集合(如List、Set等)元素的对象。它提供了一种统一的方式来访问集合中的元素,而无需暴露集合的内部表示。Iterator是Java集合...
程序百科的头像-程序百科程序百科1个月前
0417

面试题:简述怎么确保一个集合不能被修改 ?

在Java中,可以通过多种方式来确保一个集合不能被修改,从而保证数据的只读性。以下是几种常用的方法: 使用Collections.unmodifiableXXX()方法: Java提供了Collections工具类,其中包含了一系...
程序百科的头像-程序百科程序百科1个月前
04412

面试题:简述Java集合的快速失败机制 “fail-fast” ?

在Java集合框架中,“快速失败”机制(Fail-Fast)是一种设计模式,主要用于迭代器(Iterator)的行为。它旨在尽早检测到潜在的问题,以避免数据不一致或不可预期的行为。 快速失败机制的工作原...
程序百科的头像-程序百科程序百科1个月前
02912

面试题:简述Hashtable为什么是线程安全的?

Hashtable是Java早期提供的一个线程安全的哈希表实现。它的线程安全性是通过以下机制实现的: 1. 使用synchronized关键字 方法级别的同步: Hashtable的所有公共方法(如put、get、remove...
程序百科的头像-程序百科程序百科1个月前
03614

面试题:简述为什么HashMap使用的时候指定容量?

在使用HashMap时,指定初始容量(initial capacity)是一种优化手段,主要目的是为了提高性能,减少哈希表扩容的次数。以下是具体原因: 1. 减少扩容操作 默认容量: HashMap的默认初始容...
程序百科的头像-程序百科程序百科1个月前
0398

面试题:简述HasmMap和HashSet的区别 ?

在Java中,HashMap和HashSet都是集合框架的重要组成部分,但它们有着不同的用途和特性。下面简述它们之间的主要区别,并附上总结。 数据结构和用途 HashMap:是一个基于哈希表实现的键值对(Key...
程序百科的头像-程序百科程序百科1个月前
02511

面试题:综合简述Java哪些集合类是线程安全的 ?

在Java中,集合框架提供了多种集合类,其中一部分是线程安全的,可以在多线程环境下使用。以下是常见的线程安全集合类: 1. 早期的线程安全集合类(位于java.util包) 这些集合类通过使用s...
程序百科的头像-程序百科程序百科1个月前
0446

面试题:简述Java Set有哪些实现类?

Java中的Set接口是Collection接口的子接口,它表示一个不包含重复元素的集合。Set接口有多个实现类,常见的包括: HashSet: 基于哈希表实现,不保证元素的顺序。 允许null元素。 插入、删除和...
程序百科的头像-程序百科程序百科1个月前
04914

面试题:HashTable, HashMap,TreeMap区别?

1. HashTable、HashMap、TreeMap的区别 特性HashTableHashMapTreeMap线程安全性线程安全(方法使用synchronized修饰)非线程安全非线程安全允许null键值不允许null键和null值允许null键和n...
程序百科的头像-程序百科程序百科1个月前
03812