泛型
泛型本质上是提供类型的“类型参数”,也就是参数化类型。我们可以为类、接口或方法指定一个类型参数,通过这个参数限制操作的数据类型,从而保证类型转换的绝对安全
泛型本质上就是给集合提供参数类型一但确定这个集合中就是只能存放跟你定义的那个参数类型的值
集合
集合和数组是互补的
java集合大致分为三种分别是List ,Set,Map三种其中list和Set是继承于Collection,而Map不是
List和Set也有区别其中List中的数据是有序排序也可以存放重复排序因为他是靠数组下下标来进行数据查找的而不是数组本身Set是无序排序,不能存放重复数据有重复数据会被覆盖但是插入删除数据效率高
常用的集合类 ArrayList
他的特点是集合中的数元素位置是连续的,大小是可变的,是自动增长的可以动态的增加或减少元素查询比较快捷方便 缺点是当进行数据的插入和删除的时候元素下标会进行波动
也有与其相反的LinkedList
LinkedList也是实现了List接口也可以通过索引查询集合的元素不过LinkedList和ArrayList差别也是明显的,由于LinkedList是实现了双向循环链表所以元素可以很快捷的被插入删除,也是由于链表的特性所以LinkedList查询效率相对来说比较低所以LinkedList和ArrayList之间是互补的ArrayList的优点是LinkedList的缺点,缺点是LinkedList的优点
Arrays
Arrays类能实现对数组的排序、搜索等操作,注意它和Collections的区别,Arrays针对数组,可以是基本数据类型的数组,也可以是对象数组,而Collections针对集合。Arrays 类提供的方法也均为静态方法Arrays.asList()同Collection.toArray() -起,充当,了基于数组的API与基于collection API之间的桥梁