- ArrayList类的使用
- Set接口及实现类的使用 了解
- 对象顺序,Comparable接口及其使用
- Queue接口和实现类的使用 了解
- Map接口及实现类的使用
- Collections类的实用方法操作List对象
- StreamAPI的使用 了解
泛型类型
取出和输入不用强制类型转换
泛型是带一个或多个类型参数的类或接口
Node<T> node = new Node<T>();
或者
Node<T> node = new Node<>();
泛型类型的使用与方法调用类似,方法调用需向方法传递参数,使用泛型需传递一个类型参数,即用某个具体的类型替换T。
常用的类型参数名:
E(元素)、K(键)、N(数字)、T(类型)、V(值)。
泛型可能具有多个类型参数,但在类和接口的声明中,每个参数名必须是唯一的。例
public interface Entry<K,V>{ public K getKey(); public V getValue(); }
或
Pair<Integer,String> p1 = new Pair<>(20,"twenty");
Pair<String,String> p2 = new Pair<>("China","Beijing");
泛型方法
泛型方法是带类型参数的方法,类的成员方法和构造方法都可以定义为泛型方法。
泛型方法类型参数的作用域仅限于声明的方法和构造方法内。
可为静态也可为非静态。
public static <T> void swap(T[] array,int i,int j){ }
通配符(?)的使用
public static void printList(List<?> list){ }
表示该方法可接受的元素是任何类型的List对象
有界类型参数
限制传递类型参数的类型种类。
有界类型分为上界和下界,上界用extends指定,下届用super指定.
例:声明上(下)界类型参数,使用?,后跟extends(super)关键字,然后是上(下)界类型
List<? extends Number> numberList
集合框架
集合是集中存放一组对象的一个对象。相当于一个容器,提供保存,获取和操作其他元素的方法。
java集合框架由Collection和Map构成,Collection对象用于存放一组对象,Map对象用于存放一组“关键字/值”的对象。
Collection接口的集合操作常用方法可分为基本操作,批量操作,数组操作,流操作。
基本操作:有添加元素,删除指定元素,返回集合中元素的个数,返回集合的迭代器对象。
- add(E e):向集合中添加元素e;
- remove(Object o):从集合中删除指定的元素o;
- contains(Object o):返回集合中是否包含指定的元素o;
- size():返回集合中包含的元素个数;
- iterator():返回包含所有元素的迭代器对象
批量操作:
- addAll(Collection<? extends E> c):将集合c中的所有元素添加到当前集合中;
- removeAll(Collection<?>c):从当前集合中删除c中的所有元素;
- containsAll(Collection<?>c):返回当前集合是否包含c中的所有元素;
- retainAll(Collection<?>c):在当前集合中只保留指定集合c中的元素,其他元素删除;
- clear():将集合清空
数组操作:将集合元素转换成数组元素
- Object[ ] toArray():返回包含集合中所有元素的对象数组
List接口及实现类
List接口是Collection的子接口,实现一种线性表的数据结构,存放在List中的元素都从下标0开始,可包含重复元素。
List的操作:既继承Collection的方法,还实现可定位访问、查找、迭代、返回子线性表
- get(int index):返回指定下标处的元素;
- set(int index,E element):修改指定下标处的元素;
- add(int index,E element):将指定元素插入到指定下标处;
- remove(int index):删除指定下标处的元素;
- iterator():获得表的遍历器;
- indexOf(Object o):查找指定对象第一次出现的位置;
- lastIndexOf(Object o):查找指定对象最后一次出现的位置;
- List<E>subList(int from,int to):返回从from到to元素的一个子线性表;
List虽然继承Collection,但有的操作不同,如:remove():从线性表中删除指定首次出现的元素
add()和addAll():将元素插入到线性表的末尾
ArrayList类
元素可以动态地增加和删除。
标签:java,List,元素,Day2,指定,集合,类型,泛型 From: https://www.cnblogs.com/jiay-gm-xxrj-/p/17420536.html