0815 Java集合框架
来源:互联网 发布:java多线程编程 pdf 编辑:程序博客网 时间:2024/06/16 03:26
一、集合框架体系
Java 集合框架提供了一套性能优良,使用方便的接口和类,java集合框架位于java.util包中, 所以当使用集合框架的时候需要进行导包。
二、集合接口
1、Collection 接口
Collection 是最基本的集合接口,一个 Collection 代表一组 Object,Java不提供直接继承自Collection的类,只提供继承于的子接口(如List和set)。
2、List 接口
List接口是一个有序的Collection,使用此接口能够精确的控制每个元素插入的位置,能够通过索引(元素在List中位置,类似于数组的小标)来访问List中的元素,而且允许有相同的元素。
3、Set
Set 具有与 Collection 完全一样的接口,只是行为上不同,Set 不保存重复的元素。
4、Map
将唯一的键映射到值。
Set和List的区别
1. Set 接口实例存储的是无序的,不重复的数据。List 接口实例存储的是有序的,可以重复的元素。
2. Set检索效率低下,删除和插入效率高,插入和删除不会引起元素位置改变 <实现类有HashSet,TreeSet>。
3. List和数组类似,可以动态增长,根据实际存储的数据的长度自动增长List的长度。查找元素效率高,插入删除效率低,因为会引起其他元素位置改变 <实现类有ArrayList,LinkedList,Vector>。
LinkedList和ArrayList的区别
LinkedList该类实现了List接口,允许有null(空)元素。主要用于创建链表数据结构,该类没有同步方法,如果多个线程同时访问一个List,则必须自己实现访问同步,解决方法就是在创建List时候构造一个同步的List。LinkedList 查找效率低。
ArrayList该类也是实现了List的接口,内部采用了可变长度的数组,分配的是连续的空间,遍历元素(从第一个到最后一个)及随机访问(随机查看某一个)。该类也是非同步的,在多线程的情况下不要使用。ArrayList 增长当前长度的50%,插入删除效率低。
四、集合的使用
定义
添加
访问
size()方法:
list.size():获取list的个数
get()方法:
获取集合取对应属性的值
remove()方法:
有两个重载(int a)(object o)
1.通过传入具体的元素值来删除,返回删除结果true/false
结果为true
2.通过传入对应元素的下标来删除元素,返回被删除的元素内容
contains()方法:
isEmpty()方法:
判断集合是否为空 true,false
clear()方法:
清空数据,保留对象,重置list
indexOf()方法:
返回元素第一次出现位置的下标
lastIndexOf():
返回元素最后一次出现位置的下标
removeAll()方法:
从集合中删除另一个集合所包含的元素
list.removeAll(list2);
数组和List之间的相互转换
1、ArrayList集合类常用方法
2、LinkedList集合类常用方法
五、迭代器
Iterator
- 0815 Java集合框架
- Java集合:集合框架
- 【Java】java集合框架
- [Java]Java集合框架
- JAVA集合框架和集合
- 【集合】Java集合框架介绍
- Java集合之集合框架
- [集合]Java的集合框架 Collection集合
- Java集合框架 (一)
- Java集合框架 (二)
- Java集合框架(三)
- Java集合框架
- 也来谈Java集合框架
- 也来谈Java集合框架
- Java集合框架 (一)
- Java集合框架
- 也来谈Java集合框架
- java集合框架
- 判断IE各版本浏览器的最直接有效的方式
- Scala的单元测试
- springboot实现定时任务
- 一起艳恶学习web安全之SQL注入
- Integer包装类
- 0815 Java集合框架
- java中负整数和浮点型求余
- Anyproxy Https调试
- yum is currently holding the yum lock
- 最大的奇约数(网易笔试题)
- 浅谈用友NC产品单点登录机制
- Android 热修复 Tinker接入方法
- JS 监控页面刷新或关闭,修改URL重定向刷新
- 笨办法学 Python · 续 练习 42:SQL 删除