第8章 Java集合框架1
来源:互联网 发布:知乎 卡尔曼滤波 噪声 编辑:程序博客网 时间:2024/05/14 05:31
一、集合框架
1、Collection接口
通用:add 增加 remove 移除
2、hashset
①实现Collection接口
②不包含重复对象,
③无序
3、重写equal必须重写hashCode函数
一般source-》generate hashCode and equal 就可以直接生成重写代码。
equal对比先对比hashcode(hashcode不包含重复对象) 如果不同直接返回false 如果相同再进行下一步对比,提高了效率。
4、linkhashset
插入顺序有序、不是线程同步。
5、TreeSet
元素有序、线程不安全
6、迭代器 Iterator
迭代器迭代的过程会把hashset的值锁住,对Hashset进行操作的时候会出现快速失败异常(hashset线程不安全)。
解决:通过Iterator的remove();方法,或者通过一些线程安全的集合来删除、
7、 字符串已经定义好了 CompareTo 的方法,已经不能修改。但是可以写一个外部的比较器来让 TreeSet来按新方法工作
8、TreeSet 只能加入对象,而且对象必须实现Comparable接口的 compareTo方法
字符串和空值不能比较,所以除了空指针异常
//因为要对比,所以必须实现Comparable 接口 compareTo方法
//如果有输出格式的话必须重写toString 方法
9、
* 值得注意的是subList方法的使用会对原来的值进行修改
* 如果下list2元素被修改,相应的list 里面的东西会被修改
* List list2 = list.subList(2, 4);
* 如果修改成如下则不会对list里面的内容修改
* List list2 = new ArrayList(list.subList(2,4));
如果对list里面的东西进行删除,则会出现快速失败异常
10、
//结论:类没有修改hashcode的话在使用HashSet的时候会造成同样的类却是不一样的,也就是说不相等。
- 第8章 Java集合框架1
- 【慕课笔记】第四章 JAVA中的集合框架(上) 第1节 JAVA中的集合框架概述
- 第8章java 集合
- java面向对象第7章 集合框架
- 第14周—Java集合框架上机练习题1
- java(1)--集合框架
- 第8章-Java集合 --- 概述
- 第8章 Java集合—Collection和Set集合
- 第8章 Java集合—Map集合
- 第8章 Java集合—Queue集合
- 【慕课笔记】第四章 JAVA中的集合框架(上) 第8节 学生选课—课程删除
- 【慕课笔记】第六章 JAVA中的集合框架(下) 第8节 实现学生序列排序
- 【慕课笔记】第五章 JAVA中的集合框架(中) 第1节 Map&HashMap简介
- java集合框架(1、集合介绍)
- Java集合:集合框架
- 第10篇-JAVA 集合框架-JAVA 泛型
- Java集合框架1-->List
- #java读书笔记#集合框架1
- 第7章 常用类
- myeclipse 上安装 Maven3
- 海伦在逃犯罪人员信息记录查询
- (二)java实现文档的在线浏览-安装openoffice.org
- jquery中attr和prop的区别
- 第8章 Java集合框架1
- swift 服务端要求json对象怎么办?(三)
- 把PDF转换成TXT批量转换比较好的方法
- Android开发技巧——使用Dialog实现仿QQ的ActionSheet菜单
- c++ primer异常处理(1)
- HDU 5199
- IAR 使用遇到的问题
- 手势影响view的响应
- 【Android SDK程序逆向分析与破解系列】之四:Android可执行程序ODEX分析