4/5~4/6总结

集合

4/5~4/6总结_第1张图片

 Collection 接口中包含了所有对集合的基本操作

如果在子类中不重写它们,就是执行Collection中的方法

下面是基本操作

4/5~4/6总结_第2张图片

 4/5~4/6总结_第3张图片

所有的Collection实现类都重写了toStrin()方法,使得sout(集合名)能输出集合中所有元素

4/5~4/6总结_第4张图片

集合的遍历

使用IteratoI

Iteratol的对象也叫做迭代器,想要遍历一个集合,需要先获取该集合的迭代器,再通过while循环和itertol里的方法:

hasNext:是否有元素

next()返回该指针指向的元素,并且指针向后移一位

1.迭代器遍历完,指针不会复位

2.循环中只能使用一次next()方法

3.迭代器遍历时,不能用集合的方法进行增加或删除元素,会导致指针指向位置异常

如var it = a.iterator();

在遍历循环内部只能用it.remove()进行删除,删除刚刚遍历到的元素

而不能使用a.remove();

4/5~4/6总结_第5张图片

4/5~4/6总结_第6张图片

foreach循环遍历集合元素

语法:    for(变量类型  变量名  :   集合名){}

快捷方式: 集合名.for

4/5~4/6总结_第7张图片

Lambda遍历集合元素

首先创建集合的构造器it,再it.forEachRemaining(变量名->system.out.println(变量名));

4/5~4/6总结_第8张图片

List集合

了解List集合中提供的几种方法

//void add(int index,element),在调用该方法的集合中的指定索引位置插入指定元素

4/5~4/6总结_第9张图片

//void remove(int index)  删除指定位置元素并且返回该被删除的元素

4/5~4/6总结_第10张图片

//void set(int index,element)  将索引处的元素修改成指定值,并返回修改前的值

4/5~4/6总结_第11张图片

//void get(int index)返回索引处的元素

4/5~4/6总结_第12张图片

List集合遍历

首先获取迭代器

var 变量名 = 集合名.listIterator();

比之前collectio里面的iterator多了一个list,功能多了hasPrevious,判断指针处是否有元素

Previous();使指针向前移动一位并返回当前元素,注意是先移动再返回值

4/5~4/6总结_第13张图片

泛型

当使用集合时,因为存入集合的元素都被当成object型,使用的时候需要强转,还可能发生编译错误,所以引入泛型这一概念,在集合关键词后面加,E表示不同的数据类型,也可以是引用类型。这样在将元素推入集合时,系统会先判断要添加的变量类型是否与集合泛型一致,一致的话才添加成功,

你可能感兴趣的:(数据结构)