△列表迭代器也是不支持在迭代的时候添加元素的,只是列表迭代器自己定义了增删的方法而已.迭代器可以看成实在两个元素之间的指针,每当调用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.

 

最新文章

  1. Html5 实现灯笼绘制
  2. 车销送货上门专用无线开单器-自带PDA无线移动开单系统 与云服务器连接
  3. C++学习笔记1:高级语言
  4. 【开源项目5】测滑菜单MenuDrawer的使用以及解析
  5. 【JS】限制两个或多个单选框最多只能选择一个
  6. Windows的自带控件(比如TButton)大多数消息都由它自己处理,Delphi覆盖了那么多WM_函数优先级较低,一般用不上
  7. ***网Web前端开发规范(初稿)
  8. IOS 消息
  9. C# .NET 逻辑层的框架设计
  10. equals与==号的区别?
  11. lnmp 安装opencart出现open_basedir 错误解决办法
  12. Dapper简易教程(翻译自Github上StackExchange/Dapper)
  13. POJ 2488 A Knight&#39;s Journey-dfs
  14. Oracle分析函数-nulls first/nulls last
  15. EasyUI Tree节点拖动到指定容器
  16. Google Chrome 下载&amp;绿化&amp;增强
  17. [Web 前端] React Router v4 入坑指南
  18. CSS预编译器:Sass(进阶),更快的前端开发
  19. errno.h的数字对应的字符串错误
  20. 关于validate的自定义样式

热门文章

  1. SURF
  2. xtjh
  3. 获取手机IMEI 号和 IP
  4. python day6 面向对象
  5. xheditor上传图片配置
  6. Python学习笔记-Day2-Python基础之字符串操作
  7. Function, Predicate
  8. django cycle标签
  9. Monkey类、People类和主类 E。
  10. 数独Sudoku