Collection集合重难点梳理,增强for注意事项和三种遍历的应用场景,栈和队列特点,数组和链表特点,ArrayList源码解析, LinkedList-源码解析
2021-03-09 05:30
标签:load 10个 focus 输出 day lis pre 对比 ide 1.collection[k??lek?n] 聚集 2.empty[?empti] 空的 3.clear[kl??(r)] 清除 4.iterator 迭代器 1、能够了解Java集合的继承体系结构(Collection和Map接口的继承体系结构) 2、能够了解Collection集合特点以及使用 3、能够掌握List集合的特点以及使用 4、能够掌握ArrayList集合特点以及使用(特点,使用以及原理) 5、能够掌握常见数据结构的特点(栈,队列,数组,链表) 集合概述 Collection List 数据结构 ArrayList LinkedList 相同点 都是容器,可以存储多个数据 不同点 数组的长度是不可变的,集合的长度是可变的 数组可以存基本数据类型和引用数据类型 集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类 重难点梳理
使用到的新单词:
学习目标:
知识重点梳理
超详细讲义及源代码
==知识点==
1.Collection集合
1.1数组和集合的对比【记忆】(视频01)(6‘’)
package com.itheima.mycollectiondemo1;
?
import java.util.ArrayList;
import java.util.Arrays;
?
public class MyCollectonDemo1 {
public static void main(String[] args) {
//数组可以存储基本数据类型也可以存储引用数据类型
int [] arr1 = {1,2,3};
String [] arr2 = {"a","b","c"};
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
?
ArrayListString> list1 = new ArrayList();
list1.add("a");
list1.add("b");
list1.add("c");
?
System.out.println(list1);
?
//如果集合要存储基本数据类型,那么实际存储的是他们的包装类
//ArrayList
ArrayListInteger> list2 = new ArrayList();
list2.add(1);//
list2.add(2);
list2.add(3);
System.out.println(list2);
}
}
1.2集合类体系结构【熟悉】(视频02)(换双列) (3‘’)
1.3Collection 常用方法【重点】(视频03) (13‘’)
1.什么是Collection集合(顶级接口和特点单列)
Collection是单列集合的顶级接口,它没有直接的具体实现类,有两个子接口List和Set
2.如何创建Collection集合对象(Collection和ArrayList的关系)
-
多态的方式
-
具体的实现类ArrayList
3.Collection集合常用方法
方法名 | 说明 |
---|---|
boolean add(E e) | 添加元素 |
boolean remove(Object o) | 从集合中移除指定的元素 |
boolean removeIf(Object o) | 根据条件进行移除 |
void clear() | 清空集合中的元素 |
boolean contains(Object o) | 判断集合中是否存在指定的元素 |
boolean isEmpty() | 判断集合是否为空 |
int size() | 集合的长度,也就是集合中元素的个数 |
package com.itheima.mycollectiondemo1;
?
import java.util.ArrayList;
import java.util.Collection;
?
public class MyCollectonDemo2 {
public static void main(String[] args) {
CollectionString> collection = new ArrayList();
// boolean add(E e) 添加元素
collection.add("aaa");
collection.add("bbb");
collection.add("ccc");
collection.add("dddd");
//System.out.println(collection);
//method1(collection);
//method2(collection);
//method3(collection);
//method4(collection);
//method5(collection);
//method6(collection);
?
?
}
?
private static void method6(CollectionString> collection) {
// int size() 集合的长度,也就是集合中元素的个数
int size = collection.size();
System.out.println(size);
}
?
private static void method5(CollectionString> collection) {
// boolean isEmpty() 判断集合是否为空
collection.clear();
boolean result = collection.isEmpty();
System.out.println(result);
}
?
private static void method4(CollectionString> collection) {
// boolean contains(Object o) 判断集合中是否存在指定的元素
boolean result = collection.contains("a");
System.out.println(result);
?
?
boolean result2 = collection.contains("aaa");
System.out.println(result2);
}
?
private static void method3(CollectionString> collection) {
// void clear() 清空集合
//就是将集合中所有的元素全部删除.
collection.clear();
System.out.println(collection);
}
?
private static void method2(CollectionString> collection) {
// boolean removeif(Object o) 根据条件进行删除
//removeif底层会遍历集合,得到集合中的每一个元素
//s依次表示集合中的每一个元素
//就会把这每一个元素都到lambda表达式中去判断一下
//如果返回的是true,则删除
//如果返回的是false,则保留不删除.
?
?
//boolean test(String t);
collection.removeIf(
(String s)->{
文章标题:Collection集合重难点梳理,增强for注意事项和三种遍历的应用场景,栈和队列特点,数组和链表特点,ArrayList源码解析, LinkedList-源码解析
文章链接:http://soscw.com/index.php/essay/62152.html