list集合子类特点
常用子类:ArrayList,LinkedList
ArrayList:底层数据结构是数组,查询快,增删慢
LinkedList:底层数据结构是链表,查询慢,增删快
LinkeList集合的特有功能
set集合
特点
不包含重复元素的集合
没有带索引的方法,所以不能使用普通的for循环遍历
哈希值
哈希值:是jdk根据对象的地址或者字符串或者数字算出来的int类型的数值
Object类中有一个方法可以获取对象的哈希值
Public int hashCode();返回对象的哈希码值
例:
//创建集合对象
HashSet<string>hs = new HashSet<String>();
//添加元素
Hs.add("hello");
Hs.add("world");
Hs.add("java");
//遍历
For(String s :hs){
Ststem.out.println(s);
}
唯一性的解析
LinkedHashSet集合的概述
特点:
哈希表和链表实现的Set接口,具有可预测的迭代次序
由链表保证元素有序,也就是说元素的存储和取出顺序是一致的
由哈希表保证元素唯一,也就是说没有重复的元素
TreeSet集合
元素有序,这里的顺序不是值存储和取出的顺序,而是按照一定的规则进行排序,具有排序防暑取决于构造方法
TreeSet():根据元素的自然排序进行排序
TreeSet(Comparator comparator):根据指定的比较器进行排序
没有带索引的方法,所以不能使用普通for循环遍历
由于是Set集合,所以不包含重复元素的集合。
例
自然排序Comparable的使用