集合框架
方式等等
这个作者很懒,什么都没留下…
展开
-
集合框架(六)工具类Collections
工具类Collections Collections.sort()的使用 方式一:使用 sort(List list) 方法 定义排序时,被排序的类必须要实现接口Comparable接口重写compareTo方法。 public int compareTo(Object o) { //this与传入的o比较this大于o则返回1,反之则为-1, //若二者相等但此处省略,以上为升序方法,若降序则相反 return ((this.getScore() - ((Student) o).getScore(原创 2021-09-11 09:21:17 · 89 阅读 · 0 评论 -
集合框架(五)Map
Map(I) 特点 Map集合是双列集合,以key-value的形式存储 实现类 HashMap(C) 底层实现:哈希表(散列表) 底层数据结构 JDK1.7 数组+链表(添加到链表头部—头插法,添加时会将链表的第一个元素往后移一位) JDK1.8 数组+链表(添加到链表的尾部—尾查法)|红黑树 特点: HashMap是无序的,通过key的hashCode进行排列 线程不安全 扩容是扩容大约原容量的一倍 key不可以重复,value可以有重复值,key可以为空,value原创 2021-09-11 09:19:50 · 105 阅读 · 0 评论 -
集合框架(四)Queue
Queue(I) 队列接口 特点 先进先出 常用特有方法 offer() 入队 queue.offer("one"); queue.offer("two"); queue.offer("three"); System.out.println(queue); // [one, two, three] poll() 出队(移除队列的头) System.out.println(queue); queue.poll(); System.out.println(queue); // [one,原创 2021-09-10 20:52:11 · 101 阅读 · 0 评论 -
集合框架(三)Set
Set(I) 与Collection的API完全相同 特点 Set集合截取Map(映射表) 物理空间不连续,添加没有顺序,但是不是随机 不允许为重复值 使用equals判断元素是否为空 实现类 HashSet 底层实现散列表 特点(无序且唯一) 插入是无序的,无序不是随机,按照hashCode地址值插入 不允许重复值 如果set存储的是自定义类型的对象,必须重写equals()和hashCode(),否则无法实现没有重复。 插入原理 定位,通过哈希码(通过hash原创 2021-09-10 20:49:07 · 581 阅读 · 0 评论 -
集合框架(二)List(I)
集合框架(二)List(I) List(I) 继承了Collection接口 特点: 有顺序的接口,所以是有序列表,所以可以用index(下标)定位 可以有重复值 允许有NULL值 特有方法 subList() 获取当前列表的部分视图 ⚠️注意:共用同一个内存空间所以在新的集合修改添加元素原本元素也会被修改。 System.out.println("部分的列表视图" + childrenList); childrenList.add("y"); System.out.println("部原创 2021-07-31 11:43:37 · 431 阅读 · 0 评论 -
集合框架(一)Collection(I)
集合框架(一)Collection(I) 数组与集合的区别: 数组长度不可变,集合长度可变 数组可以存储基本数据类型和引用数据类型,集合只能存储引用数据类型 数组只能存储统一类型,集合可以存储不同类型 Collection(I) 添加元素 添加一个元素 collection.add("1"); 添加另一个集合的元素 // 把B集合的元素全部添加到A中 A.addAll(B); System.out.println(A); 移出集合中所有元素 collection.clear();原创 2021-07-31 11:39:47 · 84 阅读 · 0 评论