_16_list,链表,排序

Foreach
java5引入的,增强for循环

语法 : for(数据类型 变量 : 集合){

}
在这里插入图片描述

List

在这里插入图片描述

List元素的特点 :
规定 : 有序可重复,存入顺序和取出顺序一致
并且 , 下标有序,通过下标可以表示数据唯一性,所以可以重复,其中链表是没有下标的,但是通过LinkedList封装之后,也可以通过下标获取

底层实现 :
ArrayList : 底层是索引数组
LinkedList : 底层的双向链表
Vector : 维克拖List 已经被ArrayList替代
VectorList : 属于线程安全
ArrayList : 非线程安全
所以 ArrayList 运行效率比较高
在这里插入图片描述
在这里插入图片描述
添加
在这里插入图片描述

更改

在这里插入图片描述

排序 :

在这里插入图片描述

Link

扫描二维码关注公众号,回复: 10609425 查看本文章

在这里插入图片描述
Set :
Set : 无序,不可重复,
无序 : 下标无序,并且存储顺序和读取顺序不一定一致
不可重复 : 元素不可重复
HashSet 明天再讲

SortedSet是个接口
TreeSet是SortedSet的实现类
虽然无序,但是存进去的元素可以按照某种规则进行排序
数字 : 从小到大
字符串 : 每一位上ASCII值
日期 : 自然日期

因为String,Date,Integer 三个类,都实现了比较器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

排序 :
为什么TreeSet可以自动排序
因为被存储的元素都实现了Comparable接口
TreeSet集合在添加元素的时候,会调用对象的compareTo()方法完成比较
所以 如果想要存储我们自定义的类,并且也要使用TreeSet的话,就需要实现这个接口,并覆写方法,指明排序规则
/**
* TreeSet中,元素的类型必须统一
* 因为排序需要比较,如果类型不一致,没有可比性,更没有顺序可讲
*/

发布了24 篇原创文章 · 获赞 0 · 访问量 396

猜你喜欢

转载自blog.csdn.net/qq1317121361/article/details/105337704
今日推荐