04-集合

一、数据结构

1、栈

特点:先进后出

2、队列

特点:先进先出

3、数组

特点:
	1. 元素有序,存储在一段连续的内存空间
	2. 查找元素快:因为通过索引可以快速访问指定位置的元素

4、链表

特点:
	1. 链表是一组不必连续的内存结构
	2. 由数据和节点组成
	3. 插入删除元素快:因为只需修改节点指向的下一个元素

5、红黑树

特点:
	速度特别快

6、哈希表

在这里插入图片描述

二、Collection集合

在这里插入图片描述

三、Map集合

在这里插入图片描述

四、Comparable和Comparator

1、Comparable

使用Comparable的compareTo方法进行对象比较,必须实现Comparable接口。

class Student implements Comparable<Student> {
	private String name;
	private int age;

	//构造器,getter,setter

	@Override
	public int compareTo(Student o) {
		return this.age - o.age;
	}
}

2、Comparator

使用Comparator的compare方法进行比较,不需要实现接口

// 按年龄升序,按姓名降序
Collections.sort(list, new Comparator<Person>() {

	@Override
	public int compare(Person o1, Person o2) {
		if (o1.getAge() - o2.getAge() != 0) {
			return o1.getAge() - o2.getAge();
		} else {
			return o2.getName().compareTo(o1.getName());
		}
	}

});

猜你喜欢

转载自blog.csdn.net/rookie__zhou/article/details/110090484