面试题库

全部 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 基础 简单

如何优雅地拼接带分隔符的字符串?StringJoiner 和 String.join 怎么选?

Java 基础 中等

switch 语句为什么能支持 String?底层原理是什么?

Java 基础 困难

JDK9 中 String 底层从 char[] 改为 byte[] 是为了什么?

Java 基础 中等

String.split() 和 StringTokenizer 有什么区别?split 有哪些坑?

Java 基础 困难

String.length() 返回的是字符个数吗?它与 Unicode 有什么关系?

Java 基础 困难

substring() 方法在 JDK6 和 JDK7 中的实现有何区别?曾引发什么问题?

Java 基础 困难

String 的 hashCode 为什么选用 31 作为乘数?

Java 基础 简单

为什么推荐在循环中使用 StringBuilder 而不是字符串相加?

Java 基础 中等

StringBuffer 是如何保证线程安全的?为什么说它并不是真正的线程安全解决方案?

Java 基础 简单

为什么 StringBuilder 比 String 拼接快?它的扩容机制是怎样的?

Java 基础 简单

StringBuilder 和 StringBuffer 有什么区别?如何选型?

Java 基础 中等

什么是编译期常量折叠(Constant Folding)?对字符串拼接有什么影响?