Set接口数据存储
<1>无序;添加顺序和存储不一致;
<2>不可重复;Set存储的元素不允许出现重复情况;
Set接口的两个实现类
<3>HashSet:底层存储数据的结构是【哈希表】;
<4>TreeSet:底层存储数据的结构是【平衡二叉树】
<5>Set集合使用的方法都是Collection接口中的方法,没有特殊方法;但是Set接口的两个重要的实现类,HashSet和TreeSet存储过程中,需要依赖于其他方法和要求;
<1> HashSet底层存储数据的结构是一个哈希表,是一个表结构;
<2>可以把哈希表想象成一个Excel表格;存在坐标关系,每个单元格坐标唯一;
<3>HashSet存储过程中,需要涉及到添加元素的hashCode方法,有可能也会涉及到equals方法;
<4>equals方法情况需要我们避免;
class Demo2{ public static void main(String[] args) { //创建一个HashSet集合 HashSet<String> set = new HashSet<>(); set.add("2"); set.add("3"); set.add("5"); set.add("1"); set.add("7"); set.add("4"); //Set集合中元素的添加顺序与存储顺序不一致 System.out.println(set); set.add("1"); //Set集合元素不可以重复 System.out.println(set); System.out.println(set.size()); } }