ArrayList
- 所属的包java.util
- 构建对象 无参数构造方法 带默认空间的构造方法 带colletion参数的构造方法
常用方法
- 增
- 删
- 改
- 查
package test;
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
ArrayList<String> arr = new ArrayList<String>();
ArrayList<String> arr1 = new ArrayList<String>();
arr.add("a");
arr.addAll(arr1);
arr.addAll(2,arr1);
arr.removeAll(arr1); // 从arr集合中删除arr1的元素 差集
arr.retainAll(arr1); // 找arr和arr1中都有的元素 交集
arr.get(0); // 获取元素
arr.size(); // 获取长度
arr.remove(0); // 删除元素
arr.remove("a"); // 删除a元素
arr.clear(); // 清楚全部元素
arr.contains("a"); // 查看源是否存在
arr.indexOf("a"); // 查找元素所在的位置
arr.lastIndexOf("a"); //查找元素所在的位置
arr.isEmpty(); // 集合是否为空
arr.set(1,"a"); // 修改元素
arr.toArray(); // 集合变数组
arr.trimToSize(); // 变成有效个数的长度
}
}
Vector
java.util包
- 是ArrayList的早期版本
- Vector底层也是利用数组的形式存储
- Vector的线程是同步的安全性高
- 扩容方法与ArrayList不同 默认是扩容两倍 ```java package test; import java.util.Vector;
public class Test {
public static void main(String[] args) {
Vector
<a name="jsCQR"></a>
## Stack类 栈
1. **java.util**
1. **构造方法只有一个无参数的**
1. **几个特殊的方法**
```java
package test;
import java.util.Stack;
public class Test {
public static void main(String[] args) {
Stack<String> s = new Stack<String>();
s.push("a"); // 入栈
String a = s.pop(); // 出栈
s.empty(); // 栈是否为空
s.search("a"); // 找到所在的位置
System.out.println(a);
}
}
Queue接口
- java.util 常用子LinkedList ArrayDeque
- 通过无参数构造方法创建
- 一般方法
- add
- element
- remove
- offer
- peek
- poll
LinkedList类
- java.util
- 底层使用双向链表的数据结构来存储 适合插入删除
- 构建对象
- 无参数的构造方法
- 有参数的构造方法
常用的方法
java.util
- 创建对象, 有参数 无参数
- 集合容器的基本使用
- add();增
- remove(); 删
- iterator() ;迭代器
- size(); 个数
无重复的原则
- 使用equals和hashCode两个方法来比较,这两个方法返回一个表示set相等
- set集合发现是重复的元素 拒绝进入 存储的是第一个
package test;
import java.util.*;
public class Test {
public static void main(String[] args) {
HashSet<String> set = new HashSet<String>();
set.add("aaa");
set.add("bbb");
set.add("ccc");
Iterator<String> it = set.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
TreeSet类
java.util
- 无参数构造方法 有参数构造方法
- 常用方法
- add
- iterator
- remove
- size
- …..
- 无重复的规则
import java.util.*;
public class Test {
public static void main(String[] args) {
HashMap
TreeMap
用法跟上面一样