Day 7 : 补Java语言基础2(集合 & 泛型)
集合
常用集合:
-
ArrayList
-
TreeSet : 有序、防止重复。
TreeSet中的元素必须是实现Comprable中compareTo的类型 -
HashMap : 以name(key)-value对的形式存取。
值可以重复,但是关键词不可以。 -
LinkedList : 插入删除比较高效的ArrayList。
-
HashSet : 防止重复、可快速找寻相符的元素。
HashSet通过hashCode()和equals()双重检查来防止重复,前者查值是否相同,后者查是否为同一个对象(内存地址)。但是,需要注意的是equals()在String类中已经被重载,检查两个字符串值是否相同。所以对于非String类型的HashSet想要防止重复,需要重载hashCode()和equals()方法。 -
LinkedHashMap : 可记住插入顺序、按存取先后排序的HashMap。
对字符串的排序可以使用TreeSet或者Java.util.Collections.sort();
泛型
通常与这"<>"一组符号同时出现,一般用一个大写字符T或者E,用来模糊的表明一种类。
使用泛型的类:
使用泛型类的方法函数:
对于泛型来说,实现方法也是用extends(正常情况下是implements):
万用字符,用来创建出接受子类参数的方法(本质上和使用泛型类的方法函数是差不多的):