△列表迭代器也是不支持在迭代的时候添加元素的,只是列表迭代器自己定义了增删的方法而已.迭代器可以看成实在两个元素之间的指针,每当调用next就跳过一个元素并返回刚刚跳过的元素.
△HashTable不允许null作为键和值,而HashMap可以.
△在Java中,所有链表实际上都是双向连接的,即每个节点还存放着指向前驱节点的引用
,add方法将在listiterator迭代器位置前添加一个元素.尽管有Listiterator,但是对列表的并发修改仍然会产生异常,但是这里有个特例,set操作不被视为结构性的修改.
△链表不支持随机访问,调用get方法,依然需要逐个寻找,因此对于列表,非常不建议下列的做法(效率极低,最好用迭代器):
for(int i=0;i<list.size();i++) {
list.get(i);
}
△散列表由链表数组实现.每个列表称为桶.先计算散列码,然后得到桶的索引,最后根据桶内如果有重复元素,在根据equals方法判断是否重复.
△优先级队列:迭代的时候无序,但是remove的时候是有顺序的.
△集合框架中视图的概念:
     通过使用视图,可以获得其他实现了集合接口和映射表接口的对象.例如keyset方法,看似好像创建了一个新集,但是这个类的方法可以对原映射表进行操作.例如:如果在keyset中remove了某个key,对应的映射表会被删除.
△LinkedHashSet和LinkedHashMap,链接散列映射表将用访问顺序而不是插入顺序对于映射条目进行迭代.(ArrayList是插入顺序).每次调用get或put则会更新顺序,将使得元素到了条目的尾部,因此有利于寻找什么元素访问频率较低,在枚举的前几个元素都是访问低的..,要想构造这样的HashMap,在构造函数的时候使用:LinkedHashMap<K,V>(initialCapacity,loadFactor,true).
△RandomAccess接口可以用来检测一个集合是否支持高校的随机访问.(标记性接口),ArrayList和Vector类实现了RandomAccess接口
△Arrays类的静态方法返回了一个包含了普通数组的一个List包装器.例如:
Card[] cardDeck=new Card[2];
List<Card> cardList=Arrays.asList(cardDeck);
  返回的是视图对象带有访问底层数组的get和set方法,改变数组大小的所有方法(add和remove)都会抛出异常.
  collections.nCopies(n,anObject):将返回一个不可修改的实现类List接口的对象,对象中有n个元素,每个元素都是"anObject".
△子范围视图也可以建立.例如对于一个列表可以调用subList获得一个列表的子范围视图.可以将任何操作应用于子范围,并且能够真实反映整个列表的情况.例如,下列操作将删除一个列表的第一个元素到第9个元素(包含头不包含尾):
List group=staff.subList(1,10);
group.clear();

△Collections.unmodifiableList(list):将返回一个不可修改的列表视图,Collections.synchronizedMap(new HashMap<>());将返回一个线程安全的HashMap.

 

JavaSE复习_9 集合框架复习的更多相关文章

  1. JavaSE中Collection集合框架学习笔记(2)——拒绝重复内容的Set和支持队列操作的Queue

    前言:俗话说“金三银四铜五”,不知道我要在这段时间找工作会不会很艰难.不管了,工作三年之后就当给自己放个暑假. 面试当中Collection(集合)是基础重点.我在网上看了几篇讲Collection的 ...

  2. JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序

    前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...

  3. java集合框架复习(一)

    数组类Array是java中最基本的一个存储结构,它用于存储 一组连续的对象或一组类型相同的基本类型的数据. Array特点:效率高,但容量固定且无法动态改变, 缺点:无法判断其中存有多少元素,len ...

  4. java集合框架复习

    数组类Array是java中最基本的一个存储结构,它用于存储 一组连续的对象或一组类型相同的基本类型的数据. Array特点:效率高,但容量固定且无法动态改变, 缺点:无法判断其中存有多少元素,len ...

  5. java集合框架复习----(3)Set

    文章目录 四.set集合 1.hashSet[重点] 2.TreeSet 四.set集合 无序.无下标.元素不可重复 1.hashSet[重点] == 数组+链表+红黑树== 基于hashcode计算 ...

  6. java集合框架复习----(1)

    文章目录 1 .集合框架思维导图 一.什么是集合 二.collection接口 1 .集合框架思维导图 一.什么是集合 存放在java.util.*.是一个存放对象的容器. 存放的是对象的引用,不是对 ...

  7. java集合框架复习----(4)Map、List、set

    文章目录 五.Map集合[重要] 1.hashMap 六.Collections工具类 总结 集合的概念 List集合 set集合: Map集合 Collection 五.Map集合[重要] 特点: ...

  8. java集合框架复习----(2)List

    文章目录 三.List集合 listIterator:迭代器 List实现类 1.泛型类 2.泛型接口 三.List集合 特点 有序,打印输出的顺序和添加时的顺序一致(不会帮你自动排序) 有下标,可以 ...

  9. Java复习:集合框架(一张图)

    最后一个看不见了补充一下: ConcurrentHashMap:是线程安全的(基于lock实现的,同步的时候锁住的不是整个对象,而加了synchronized的是锁住了整个的对象),实现了Map接口, ...

随机推荐

  1. hdwiki model目录下的函数类

    model目录下的函数类    actions.class.php(站内地图相关) getHTML:获得页面菜单和相关信息 getMap:生成站内地图 adv.class.php 对wiki_adve ...

  2. 20145227《Java程序设计》第1次实验报告

    20145227<Java程序设计>第1次实验报告 实验步骤与内容 命令行下Java程序开发 1.打开 cmd ,输入 mkdir 20145227 命令建立实验目录,然后输入 cd 20 ...

  3. [HTML]JS添加表格

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. ACM学习之路————一个大整数与一个小整数不得不说得的秘密

    这个相对于两个大整数的运算来说,只能说是,low爆了. 只要利用好除法的性质,这类题便迎刃而解.O(∩_∩)O哈哈~ //大整数除一个int数 #include<iostream> #in ...

  5. <<构建之法>>略读感想

    经过对构建之法这本书的快速阅读和学习,我有以下疑问. 1.对软件工程来说是应该更注重结果和功能的实现还是更注重代码的易读和完整? 2.应该怎样平衡不同用户的不同需求以达到使大多数人满意的目的? 3.应 ...

  6. Bone Collector II

    Bone Collector II Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...

  7. 测试-Animator的“当前剪辑CurrentAnimatorStateInfo”

    左边是Transport到Idle,右边是完全到Idle 当进入过渡时,事实上Transport状态并未结束,通过下面打印出来的hash可以看出还是Transport的状态 过渡结束才正式变为Idle ...

  8. 2016-2017 CT S03E05: Codeforces Trainings Season 3 Episode 5 (2016 Stanford Local Programming Contest, Extended) J

    链接:http://codeforces.com/gym/101116 题意:给出n个点,要求一个矩形框将(n/2)+1个点框住,要面积最小 解法:先根据x轴选出i->j之间的点,中间的点(包括 ...

  9. Radar之字节流加载图片

    获取GUITexture GameObject _obj = GameObject.Find("Tex1"); GUITexture _tex = _obj.GetComponen ...

  10. 2016年12月11日 星期日 --出埃及记 Exodus 21:6

    2016年12月11日 星期日 --出埃及记 Exodus 21:6 then his master must take him before the judges. He shall take hi ...