排序
面试题:简述ConcurrentHashMap 和 Hashtable 的区别 ?
ConcurrentHashMap 和 Hashtable 都是 Java 中线程安全的键值对集合,但它们在实现方式、性能和使用场景上有显著区别。以下是两者的主要区别: 1. 锁的粒度 Hashtable: 使...
面试题:ArrayList和Vector有何异同点?
1. 相同点 底层实现: ArrayList和Vector都是基于动态数组实现的,可以动态调整容量。 允许元素: 两者都允许存储null值和重复元素。 索引访问: 两者都支持通过索引快速访问元素(时间复...
面试题:如何解决Java中遇到的集合框架使用问题 ?
1. 性能问题 问题描述:在使用集合时,可能会遇到性能瓶颈,比如ArrayList的频繁插入和删除操作效率低,或者HashMap的哈希冲突导致查找效率下降。 解决方案: 选择合适的集合类: 如果需要频...
面试题:简述HasmMap和HashSet的区别 ?
在Java中,HashMap和HashSet都是集合框架的重要组成部分,但它们有着不同的用途和特性。下面简述它们之间的主要区别,并附上总结。 数据结构和用途 HashMap:是一个基于哈希表实现的键值对(Key...
面试题:简述为什么 ArrayList 的 elementData 加上 transient 修饰?
在 ArrayList 的源码中,elementData 数组被声明为 transient,即: transient Object[] elementData; transient 关键字的作用是 阻止该字段被默认的序列化机制...
面试题:简述如何实现数组和 List 之间的转换 ?
在Java中,数组和List是两种常用的集合类型,它们之间可以很方便地进行相互转换。以下是具体的方法: 数组转换为 List 使用 Arrays.asList() 方法 Java 提供了 Arrays 类的 asList() 方法,可以...
面试题:Java中如何使用HashSet函数进行集合操作 ?
创建HashSet:首先,你需要创建一个HashSet对象。可以通过以下方式创建:HashSet<String> set = new HashSet<>(); 添加元素:使用add()方法向HashSet中添加元素。如果元素已经存在...
面试题:解释Collection不从Cloneable和Serializable接口继承?
Collection接口作为Java集合框架的基础接口之一,并没有直接继承Cloneable和Serializable接口。这种设计决策背后有几个关键原因: 灵活性与通用性 Collection接口旨在提供一个广泛适用的框架,...