A:集合的由来
数组的长度是固定的,当添加的元素超过了数组的长度时需要对数组重新定义,太麻烦,Java内部给我们提供了集合类,
能储存任意对象,长度是可以改变的,随着元素的增加而增加,随着元素的减少而减少
B:数组的集合的区别
区别1:
数组既可以存储基本数据类型又可以存储引用书库类型
集合只能存储引用数据类型(对象),集合中也能存储基本数据类型,但是在存储的时候会自动装箱变成对象
区别2:
数组长度是固定的,不能增长
集合长度是可变的,可以根据元素的增长而增长
C:数组和集合什么时候有用
1.如果元素个数是固定的,推荐用数组
2.如果元素个数不是固定的,推荐用集合
结构:
Collection(单列集合的根接口)
List:有序(存取顺序一致),有索引,可以存储重复
ArrayList:数组实现
LinkedList:链表实现
Vector:数组实现
Set:无序(存取顺序不一致),无索引,不可以存储重复
HashSet:哈希算法
TreeSet:二叉树算法