【友情链接】———–—>Java中的各种集合大汇总,学习整理
【友情链接】————–> Collection集合
【友情链接】————–> ArrayList集合及其常用功能
【友情链接】————–> ArrayList应用<两大案例的数据分组聚合>
【友情链接】———–—> Iterator迭代器
【友情链接】———–—>List集合 & LinkedList集合 & Vector集合
【友情链接】———–—>set集合 & HashSet集合 & 哈希值& LinkedHashSet集合 &TreeSet集合&可变参数
【友情链接】———–—>Map集合 & HashMap集合 & LinkedHashMap集合&HashTable集合
【友情链接】———–—>Collections类集合工具类
List集合
java.util.List extends Collection
List接口的三大特点:
- 1.List集合是有序的集合,该集合的存储元素和取出元素的顺序是一致的,例如:存储的abcd,那么,取出的也是abcd
- 2.List集合中含有索引,并且List集合中有带索引的方法
- 3.List集合中可以存储重复的数据
List集合常用功能
public static void main(String[] args) {
//创建一个list集合,使用多态
List<String> list=new ArrayList<>();
//向list集合中添加元素
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("a");
list.add("b");
list.add("a");
System.out.println(list);
//打印 [a, b, c, d, a, b, a] 重写了toSting方法
}
1.public void add(int index,E eLement):将指定的元素添加到集合中的指定位置上。
//1.public void add(int index,E eLement):
//将指定的元素添加到集合中的指定位置上。
System.out.println("**将指定的元素,添加到该集合中的指定位置上。**");
list.add(4,"java");
System.out.println(list);
2.public E get(int index) :返回集合中指定位置的元素。
//2.public E get(int index) :返回集合中指定位雷的元素。
System.out.println("**返回集合中指定位雷的元素。**");
String gl = list.get(4);
System.out.println(gl);
// String gl1 = list.get(8);
//java.lang.IndexOutOfBoundsException: Index: 8, Size: 8 下标越界异常
//System.out.println(gl1);
3. public E remove(int index):移除列表中指定位置的元素,返回的是被移除的元素。
//3. public E remove(int index):
//移除列表中指定位置的元素,返回的是被移除的元素。
System.out.println("**移除列表中指定位置的元素,返回的是被移除的元素。**");
String remove = list.remove(5);
System.out.println("remove:\t"+remove);
System.out.println(list);
4. public E set(int index,E element) :用指定元素替换集合中指定位置
//4. public E set(int index,E element) :用指定元素替换集合中指定位置的元素,返回值的更新前的元素
System.out.println("**用指定元素替换集合中指定位置的元素,返回值的更新前的元素**");
String set = list.set(6, "hadoop");
System.out.println("set:\t"+set);
System.out.println(list);
List集合的实现类有Arraylist集合、LinkedList集合、Vector集合
Arraylist集合
ArrayList集合存储的数据的结构为数组,对arraylist集合中的元素增加和删除速度慢(增删慢),但是对集合中数据的查找数组快(查找快),在开发过程中我们使用的最多的功能就是对数据的查找和遍历,所以ArrayList集合是最常用的集合。
ArrayList集合之前已经有过一篇文章专门的介绍过了,附上链接:
【友情链接】————–> ArrayList集合及其常用功能
LinkedList集合
LinkedList集合在java.util包下
LinkedList集合,存储的数据结构是链表结构(是一个双向线性表)而链表结构是很方便对元素进行添加和删除操作的。
LinkedList集合的特点:
- 1.LinkedList集合的底层是链表结构(一个双向的线性表),查找数据的速度比较慢,但是对数据的增加和删除的操作就很快(查找较慢,增删较快)
- 2.LinkedList集合中有很多的操作集合首尾部(首部和尾部)的元素的方法
LinkedList集合的常用方法:
注意;当使用LinkedList集合的特有方法时,不能使用多态来创建LinkedList集合
向LinkedList集合中添加元素的3种方法
- public void addFirst(E e):把指定的元素数据插入到列表的开头。
- public void addLast(E e):把指定的元素数据添加到列表的尾部。效果等同于add()方法
- public void push(E e):把指定的元素数据推入到列表所表示的堆栈中。效果等同于addFirst(E e)方法
//创建linkedList集合对象linkedList
LinkedList<String> linkedList = new LinkedList<>();
//使用add()方法向集合中添加元素
linkedList.add("a");
linkedList.add("b");
linkedList.add("c");
linkedList.add("d");
linkedList.add("a");
System.out.println(linkedList);
//打印 [a, b, c, d, a]
//1. public void addFirst(E e):把指定的元素数据插入到列表的开头。
linkedList.addFirst("listhead");
System.out.println(linkedList);
//2.public void addLast(E e):把指定的元素数据添加到列表的尾部。效果等同于add()方法
System.out.println("------------------");
linkedList.addLast("listlast");
System.out.println(linkedList);
//3.public void push(E e):把指定的元素数据推入到列表所表示的堆栈中。效果等同于addFirst(E e)方法
System.out.println("------------------");
linkedList.push("listpush");
System.out.println(linkedList);
向LinkedList集合中移除元素的3种方法
- publie E removeFirst():移除并且返回集合中的第一个元素数据。
- public E removeLast():移除并且返回集合中的最后一个元素数据。
- public E pop( ):从集合所表示的堆栈中弹出一个元素数据。其效果等价于 removeFirst()方法
//1.publie E removeFirst():移除并且返回集合中的第一个元素数据。
System.out.println("------------------");
String first = linkedList.removeFirst();
System.out.println(first);
System.out.println(linkedList);
//2.public E removeLast():移除并且返回集合中的最后一个元素数据。
System.out.println("------------------");
String last = linkedList.removeLast();
System.out.println(last);
System.out.println(linkedList);
//3.public E pop( ):从集合所表示的堆栈中弹出一个元素数据。其效果等价于 removeFirst()方法
System.out.println("------------------");
String pop = linkedList.pop();
System.out.println(pop);
System.out.println(linkedList);
获取LinkedList集合中元素的3种方法
- public E getFirst();获取集合中的第一个元素数据
- public E getLast():获取集合中的最后一个元素数据
- public E get(): 获取集合中指定的下标的元素数据
//创建linkedList集合对象linkedList
LinkedList<String> linkedList = new LinkedList<>();
//使用add()方法添加元素
linkedList.add("a");
linkedList.add("b");
linkedList.add("c");
linkedList.add("d");
linkedList.add("a");
linkedList.addFirst("listhead");
linkedList.addLast("listlast");
System.out.println(linkedList);
//打印 [listhead, a, b, c, d, a, listlast]
//1.public E getFirst();获取集合中的第一个元素数据
String first = linkedList.getFirst();
System.out.println("first:\t"+first);
//2.public E getLast():获取集合中的最后一个元素数据
String last = linkedList.getLast();
System.out.println("last:\t"+last);
//3.public E get(): 获取集合中指定的下标的元素数据
System.out.println("**获取指定下标元素**");
String get = linkedList.get(3);
System.out.println(get);
判断LinkedList集合中是否有元素
- public boolean isEmpty():若集合中不包含元素,那么就返回true
//创建linkedList集合对象linkedList
LinkedList<String> linkedList = new LinkedList<>();
//使用add()方法添加元素
linkedList.add("a");
linkedList.add("b");
linkedList.add("c");
linkedList.add("d");
linkedList.add("a");
linkedList.addFirst("listhead");
linkedList.addLast("listlast");
System.out.println(linkedList);
//打印 [listhead, a, b, c, d, a, listlast]
//清空LinkedList集合
linkedList.clear();
System.out.println(linkedList);//[] 重写了toString方法
//public boolean isEmpty():如果集合中不包含元素,那么返回true
boolean empty = linkedList.isEmpty();
System.out.println("isEmpty:\t"+empty);
简单了解下Vector集合
vector集合是搜有单列集合的"祖宗",它是从jdk1.0版本就存在了
- Vector类可以实现可增长的对象数组
- Vector集合与ArrayList结构一样,底层也是一个数组,包含可以使用整数索引进行访问的组件。
从jdk1.2开始,此类改进为可以实现 List 接口,使它成为Java Collections Franework的成员。与新collection实现不同,Vector是同步的。
制作不易,各位友友们,大佬们给点鼓励!
点赞👍 收藏+关注 一键三联走起!