2020java常见面试题及答案:第一部分
来源 :中华考试网 2020-10-02
中HashSet的原理
HashSet继承自Set,是无需不可重复集合,而Set又与List继承自Collection。
HashSet底层采用HashMap来实现,每一个存放在Set中的元素,实际都是存放在了HashMap的Key中,所有元素的Value都是一个private final static Objcect OBJECT = new Object()。同样的可以添加null数据。
ConcurrentHashMap的原理
ConcurrentHashMap底层同样采用数组加链表的结构。与HashMap的区别在于前者是线程安全的,并且采用了分段锁。同时在JDK1.8后对其中的部分方法进行了更新,对数据的操作使用了Unsafe类中的方法直接对内存进行操作(除了删除是直接在方法上添加Synchronized)。
equals和==区别
==是一种关系运算符,用来比较两个属性是否相等。如果比较的是基本类型,则是比较他们的值是否相等,如果比较的是对象,则是比较他们在内存中的地址是否相等。
equals是Object类中的一个方法,只能用来比较对象,不能比较基本类型。如果在对象中需要使用该方法,需要先对它进行重写,同时还要重写hashcode()方法。
填写下面表单即可预约申请免费试听!害怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
预约申请免费听课
- 地区:
- 北京
- 天津
- 上海
- 江苏
- 浙江
- 山东
- 江西
- 安徽
- 广东
- 广西
- 海南
- 辽宁
- 吉林
- 黑龙江
- 内蒙古
- 山西
- 福建
- 河南
- 河北
- 湖南
- 湖北
- 四川
- 重庆
- 云南
- 贵州
- 新疆
- 西藏
- 陕西
- 青海
- 宁夏
- 甘肃
- 姓名:
- 手机: