收集
集合无序且不可重复
是Set集合的实现,具有Set集合的特点,无序、不可重复。 因为Set集合继承了集合,所以集合提供的方法与List集合类似。
哈希表(hash table)
常用的数组和单向链表结构:
哈希表由一个数组和一个单向链表组成。 数组的值是第一个单向链表元素的地址,数组的下标是一个元素的哈希值。 哈希表既具有数组的快速查询,又具有链表快速动态增删改查的特点。
集合元素的()方法和()方法
集合的元素不能重复。 如果集合元素是基本数据类型的类型或包装类,则()方法和()方法都被重写了。 如果集合元素是自定义类型,()方法和()方法是直接继承对象,这种情况下,为了保证集合元素不重复java string转list集合,list集合转成数组,需要()方法和()方法被重写。 但一般情况下,如果能保证元素的唯一性,这两个方法都不需要重写。
案例:集合的元素是类型或者基础数据的包装类,重复的数据不会添加到集合中,因为这些类重写了()方法和()方法
收集
集合无序且不可重复
集合实现了该接口,保持了集合元素无序、不可重复的特性,但存储的元素可以按照元素大小的顺序自动排序。
案例:验证集合中存储的元素是否会自动排序,数值类型、字符串类型和日期类型
馆藏自动分类
如果集合中存储的元素类型是基本数据类型的包装类,则这些类实现了java.lang。 接口并在接口中实现int(To)方法。 所以这些元素可以在集合中自动排序。 如果用户自定义类型变量没有实现java.lang。 接口和接口中的()方法,直接存入集合会抛出异常。 因此,集合中存储的元素类型必须实现java.lang。 接口和接口中的()方法。
案例:创建班级,按学号排序
注意:为什么存储元素可以自动排序! 因为存储的元素类型必须实现java.lang。 接口和接口中的方法()java string转list集合,list集合转成数组,当集合添加元素时,会调用元素的()方法进行比较。 基本数据类型的类和包装类都实现了这个接口。 如果用户定义的类要作为元素存储在集合中,则该类必须实现 java.lang。 接口和接口中的方法()。 否则添加到集合时会抛出异常。