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,用来模糊的表明一种类。

使用泛型的
Day 7 : 补Java语言基础2(集合 & 泛型)
使用泛型类的方法函数
Day 7 : 补Java语言基础2(集合 & 泛型)
对于泛型来说,实现方法也是用extends(正常情况下是implements):
Day 7 : 补Java语言基础2(集合 & 泛型)
万用字符,用来创建出接受子类参数的方法(本质上和使用泛型类的方法函数是差不多的):
Day 7 : 补Java语言基础2(集合 & 泛型)