集合:
集合的特点:元素类型可以不同、集合长度可变、空间不固定。
java 中对一些数据结构和算法进行了封装即集合。集合也是一种对象,用户存储、检索、操作、传输集合对象。
collection->list线性元素可以重复。
->set,元素不可重复。
map(键值对,一个元素放两个对象,键不能重复);
集合和数组的区别:
1、集合中只能放对象引用。数组可以是基本类型也可以是引用类型。
2、集合的长度可以随元素的多少自动扩展,而数组建好后长度不可改变。
3、集合中可以存放不同类型的元素,而数组中元素的类型要一致。
4、集合中有很多定义好的算法,使用集合进行对象的存储、检索、操作和传输会很方便。
<student>泛型。表示在指定的集合存放的元素只能是Student,如果存放别的类型会报编译错误。
List 集合常见实现类区别:
ArrayList:底层采用数组实现,空间连续。遍历元素速度快,但中间插入和删除元素速度慢。线程不安全。
Vector:底层也采用数组实现,线程安全。
LinkedList:是不连续的空间。采用双向链表实现,每个元素除了存放数据外,还要存放上一个元素和下一个元素的地址。中间插入和删除元素速度快。但偏离速度慢。
集合的特点:元素类型可以不同、集合长度可变、空间不固定。
java 中对一些数据结构和算法进行了封装即集合。集合也是一种对象,用户存储、检索、操作、传输集合对象。
collection->list线性元素可以重复。
->set,元素不可重复。
map(键值对,一个元素放两个对象,键不能重复);
集合和数组的区别:
1、集合中只能放对象引用。数组可以是基本类型也可以是引用类型。
2、集合的长度可以随元素的多少自动扩展,而数组建好后长度不可改变。
3、集合中可以存放不同类型的元素,而数组中元素的类型要一致。
4、集合中有很多定义好的算法,使用集合进行对象的存储、检索、操作和传输会很方便。
<student>泛型。表示在指定的集合存放的元素只能是Student,如果存放别的类型会报编译错误。
List 集合常见实现类区别:
ArrayList:底层采用数组实现,空间连续。遍历元素速度快,但中间插入和删除元素速度慢。线程不安全。
Vector:底层也采用数组实现,线程安全。
LinkedList:是不连续的空间。采用双向链表实现,每个元素除了存放数据外,还要存放上一个元素和下一个元素的地址。中间插入和删除元素速度快。但偏离速度慢。