随笔分类 -  Java集合

摘要:Set接口实现类——HashSet 定义一个Employee类,该类包含:private成员属性name,age。要求: 创建3个Employee放入HashSet中 当name和age的值相同时,认为是相同员工,不能添加到HashSet集合中 import java.util.HashSet; i 阅读全文
posted @ 2022-01-17 20:44 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类——HashSet HashSet底层机制说明 HashSet底层是HashMap 添加一个元素时,先得到hash值——会转成->索引值 找到存储数据表table,看这个索引位置是否已经存放有数据 如果没有,直接加入 如果有,调用equals比较,如果相同,就放弃添加,如果不相同,则 阅读全文
posted @ 2022-01-16 21:26 摘星丶仙 阅读(160) 评论(0) 推荐(0) 编辑
摘要:Set接口实现类-HashSet HashSet底层机制说明 HashSet底层是HashMap,HashMap底层是(数组+链表+红黑树) @SuppressWarnings({"all"}) public class HashSetStructure { public static void m 阅读全文
posted @ 2022-01-16 20:49 摘星丶仙 阅读(14) 评论(0) 推荐(0) 编辑
摘要:#Set接口实现类-HashSet HashSet的全面说明 HashSet实现了Set接口 HashSet实际上是HashMap 可以存放null值,但是只能有一个null HashSet不保证元素是有序的,取决于hash后,在确定索引的结果。(即不保证存放元素的顺序和取出的顺序一致) 不能有重复 阅读全文
posted @ 2022-01-16 20:30 摘星丶仙 阅读(361) 评论(0) 推荐(0) 编辑
摘要:Set接口和常用方法 Set接口基本介绍 无序(添加和取出的顺序不一致),没有索引 不允许重复元素,所以最多包含一个null JDK API中Set接口的实现类有: Set接口的常用方法 和List接口一样, Set接口也是Collection的子接口,因此,常用方法和Collection接口一样. 阅读全文
posted @ 2022-01-16 19:55 摘星丶仙 阅读(80) 评论(0) 推荐(0) 编辑
摘要:ArrayList 和LinkedList的比较 如何选择ArrayList 和LinkedList: 如果我们改查的操作多,选择ArrayList 如果我们增删的操作多,选择LinkedList 一般来说,在程序中,80%-90%都是查询,因此大部分情况下会选择ArrayList 在一个项目中,根 阅读全文
posted @ 2022-01-16 16:03 摘星丶仙 阅读(16) 评论(0) 推荐(0) 编辑
摘要:LinkedList底层结构 LinkedList的全面说明 LinkedList底层实现了双向链表和双端队列特点 可以添加任意元素(元素可以重复),包括null 线程不安全,没有实现同步 LinkedList的底层操作机制 LinkedList底层维护了一个双向链表. LinkedList中维护了 阅读全文
posted @ 2022-01-16 15:10 摘星丶仙 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Vector的基本介绍 Vector类的定义说明 Vector底层也是一个对象数组,protected Object[] elementData; Vector是线程同步的,即线程安全,Vector类的操作方法带有synchronized public synchronized E get(int 阅读全文
posted @ 2022-01-16 13:47 摘星丶仙 阅读(13) 评论(0) 推荐(0) 编辑
摘要:ArrayList底层结构和源码分析 ArrayList的注意事项 permits all elements, including null ,ArrayList可以加入null,并且多个 ArrayList是由数组来实现数据存储的 ArrayList基本等同于Vector,除了ArrayList是 阅读全文
posted @ 2022-01-15 22:21 摘星丶仙 阅读(41) 评论(0) 推荐(0) 编辑
摘要:List接口和常用方法 List的三种遍历方式[ArrayList, LinkedList,Vector] 方式一:使用iterator Iterator iter = col.iterator(); while(iter.hasNext()){ Object o = iter.next(); } 阅读全文
posted @ 2022-01-15 18:49 摘星丶仙 阅读(134) 评论(0) 推荐(0) 编辑
摘要:List接口和常用方法 List接口基本介绍 List接口是Collection接口的子接口 List集合类中元素有序(即添加顺序和取出顺序一致)、且可重复 List集合中的每个元素都有其对应的顺序索引,即支持索引。 List容器中的元素都对应一个整数型的序号记载其在容器中的位置,可以根据序号存取容 阅读全文
posted @ 2022-01-15 16:57 摘星丶仙 阅读(53) 评论(0) 推荐(0) 编辑
摘要:collection接口和常用方法 Collection接口遍历对象方式2-for循环增强. 增强for循环,可以代替iterator迭代器,特点:增强for就是简化版的iterator,本质一样。只能用于遍历集合或数组。 基本语法 for(元素类型 元素名:集合名或数组名){ 访问元素 } 案例演 阅读全文
posted @ 2022-01-15 15:50 摘星丶仙 阅读(25) 评论(0) 推荐(0) 编辑
摘要:Collection接口和常用方法 Collection接口遍历元素方式1-使用lterator(迭代器) 基本介绍 Iterator对象称为迭代器,主要用于遍历Collection 集合中的元素。 所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了lte 阅读全文
posted @ 2022-01-15 10:46 摘星丶仙 阅读(66) 评论(0) 推荐(0) 编辑
摘要:Collection接口和常用方法 Collection接口实现类的特点 public interface Collection extends Iterable collection实现子类可以存放多个元素,每个元素可以是Object 有些Collection的实现类,可以存放重复的元素,有些不可 阅读全文
posted @ 2022-01-14 22:19 摘星丶仙 阅读(25) 评论(0) 推荐(0) 编辑
摘要:集合主要是两组(单列集合,双列集合) Collection接口有两个重要的子接口 List Set,他们的实现子类都是单列集合 Map接口的实现子类是双列集合,存放的K-V public static void main(String[] args) { ArrayList arrayList = 阅读全文
posted @ 2022-01-14 21:46 摘星丶仙 阅读(18) 评论(0) 推荐(0) 编辑
摘要:集合的理解和好处 数组的不足之处: 长度开始时必须指定,而且一旦指定,不能更改 保存的必须为同一类型的元素 使用数组进行增加/删除元素的示意代码-比较麻烦 写出Person数组扩容示意代码。 Person[] pers = new Person[1];//大小是1 per[0] = new Pers 阅读全文
posted @ 2022-01-14 21:25 摘星丶仙 阅读(41) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示