面试题库

全部 Django Elasticsearch FastAPI Flask Function Call JVM Java IO Java 后端 Java 基础 Java 并发 Java 新特性 Java 集合 JavaWeb Kafka LLM LangChain LangGraph MongoDB MyBatis MySQL Netty Nginx Python RAG RabbitMQ Redis RocketMQ Spring Spring AI SpringBoot SpringCloud SpringMVC ZooKeeper 分布式 后端技术 大厂面经 大数据 微服务 提示词工程 操作系统 数据库 数据结构 智能体 海康威视2026秋季社招专项 消息队列 监控运维 算法 系统设计 缓存 计算机基础 计算机网络 设计模式 面试题 高可用 高并发
Java 集合 简单

为什么建议用 isEmpty() 而不是 size() == 0 判断集合为空?

Java 集合 困难

ConcurrentSkipListMap 的跳表原理是什么?与 ConcurrentHashMap 如何取舍?

Java 集合 中等

Java 集合框架中有哪些 fail-safe 的并发集合?分别适合什么场景?

Java 集合 中等

HashMap 在 Java 8 之后 treeify 的条件判断发生在哪个时机?

Java 集合 简单

ArrayList 的 remove(Object) 和 remove(int) 有什么区别和坑?

Java 集合 中等

PriorityBlockingQueue 与 PriorityQueue 有什么区别?

Java 集合 困难

ConcurrentHashMap 的 compute 方法在什么情况下会死锁?

Java 集合 中等

HashSet 扩容时元素顺序为什么会变化?

Java 集合 中等

HashMap 和 ConcurrentHashMap 的迭代器行为有什么不同?

Java 集合 中等

IdentityHashMap 为什么使用开放寻址法而不是链地址法?

Java 集合 简单

Comparable 和 Comparator 在集合排序中的区别是什么?

Java 集合 困难

为什么集合类的 size 字段在并发容器中难以精确维护?