0
点赞
收藏
分享

微信扫一扫

2022.1.7学习笔记(补)

科牛 2022-01-10 阅读 88
java

今日学习内容:

List、Set、、可变参数、Collections

List

1.隶属于Collection接口,因此可以使用该接口的方法,特点是储存的内容为有序的,可重复的

2.有两个常用的实现类特色分别是

ArrayList:读取快,增删慢

LinkedList:读取慢,增删快

3.List常用方法

public void add(int index, E element): 将指定的元素,添加到该集合中的指定位置上。

public E get(int index):返回集合中指定位置的元素。

public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。

public E set(int index, E element):用指定元素替换集合中指定位置的元素,返回值的更新前的元素。

4.LinkedList特有方法

public void addFirst(E e):将指定元素插入此列表的开头。

public void addLast(E e):将指定元素添加到此列表的结尾。

public void push(E e):将元素推入此列表所表示的堆栈。

public E getFirst():返回此列表的第一个元素。

public E getLast():返回此列表的最后一个元素。

public E removeFirst():移除并返回此列表的第一个元素。

public E removeLast():移除并返回此列表的最后一个元素。

public E pop():从此列表所表示的堆栈处弹出一个元素。

public boolean isEmpty():如果列表不包含元素,则返回true。

Set

1.同样隶属于Collection,特点是储存的元素是无序的,不可重复,且无法索引

2.拥有两个常用实现类

HashSet:底层是哈希表+(红黑树)实现的,无法索引,不可重复,无序,查询速度快

LinkedHashSet:底层相较于HashSet多了一层链表结构,因此是有序的,其他方面无变化

3.如果需要储存自定义类的元素,必须重写hashCode和equals方法,因为系统判断两个元素是否重复是靠这两个方法的

可变参数

1.可以使方法更加灵活,可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数

2.使用前提是当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数.

也可以将数据类型设置为Object,就可以应对大部分情况

Collections

1.java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:

public static <T> boolean addAll(Collection<T> c, T... elements):往集合中添加一些元素。

public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序。

public static <T> void sort(List<T> list):将集合中元素按照默认规则排序。(被排序的集合里边存储的元素,必须实现Comparable,重写接口中的方法compareTo定义排序的规则)

public static <T> void sort(List<T> list,Comparator<? super T> ):将集合中元素按照指定规则排序。(o1-o2:升序,反之为降序)

练习

List

 

 

Set、Collections尝试

 

 可变参数

 

 

 

举报

相关推荐

2022.1.6学习笔记(补)

2022.1.7内部类

补21.9.13-9.23学习记录

补单平台淘宝补单计划

Fourteen Day(补)

补作业 1

0 条评论