后端岗位面试题更新 2026-08-05
Java和Go语言中的List,底层用的数组,数组是否有区别?
知乎后端开发互联网/IT技术原理方案权衡GoJava
考察说明
考察对Java和Go中List底层数组实现的区别及内存管理机制的理解
回答思路
- 指出Java ArrayList和Go slice底层都是数组,但扩容策略不同
- 说明Java数组固定长度,Go slice是可变长度的视图结构
- 对比扩容时的内存分配和复制成本
- 提及Go slice的共享底层数组和追加时的扩容行为
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。