1.数组声明了它容纳的元素的类型,而集合不声明。数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量了。而集合是可以动态扩展容量,可以根据需要动态改变大小,集合提供更多的成员方法,能满足更多的需求。数组的存放的类型只能是一种(基本类型/引用类型),集合存放的类型可以不是一种(不加泛型时添加的类型是Object)。数组是java语言中内置的数据类型,是线性排列的,执行效率或者类型检查都是最快的。
2.迭代器,提供一种访问一个集合对象各个元素的途径,同时又不需要暴露该对象的内部细节。java通过提供Iterator和Iterable俩个接口来实现集合类的可迭代性,迭代器主要的用法是:首先用hasNext()作为循环条件,再用next()方法得到每一个元素,最后在进行相关的操作。
增强for循环是一种简单模式的for循环,为了方便数组和集合的遍历而存在。
普通for循环的优点是变量可控,操作起来方便直观,缺点是较为繁琐。 增强for循环的的优点是代码较为简洁,缺点正是过于简洁,不便于对其遍历的元素进行复杂的操作。 一般的,仅仅是遍历所有元素,选用增强for循环
3.泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。泛型就是就是避免强制类型转换,减少装箱拆箱提高性能,减少错误
|