ArrayList类是一个特殊的数组。通过添加和删除元素,就可以动态改变数组的长度。
一.优点
1。支持自动改变大小的功能
2。可以灵活的插入元素
3。可以灵活的删除元素
二.局限性
跟一般的数组比起来,速度上差些
三.添加元素
1.将对象添加到ArrayList的结尾处--add(Ee);
List<String> aList=new ArrayList<String>();
aList.add("a");
aList.add("b");
aList.add("c");
aList.add("d");
aList.add("e");
内容为:[a, b, c, d, e]
2.将元素插入ArrayList的指定索引处--add(int index, Eelement);
List<String> aList=new ArrayList<String>();aList.add("a");aList.add("b");aList.add("c");aList.add("d");aList.add("e");aList.add(0,"aa");
结果为:[aa, a, b, c, d, e]
3.将集合中的某个元素插入ArrayList的指定索引处--addAll(int index, CollectionE> c);
四.删除
a)从ArrayList中移除特定对象的第一个匹配项,注意是第一个-- remove(Object o)
2.移除ArrayList的指定索引处的元素--remove(int index);
五.List转换为数组
List的toArray方法用于将集合转换为数组,但实际上该方法是在Collection中定义的。所以所有的集合都具备这个功能其中有两个方法Object[] toArray();<T>T[] toArray(T[] a);其中第二个方法是比较常用的,我们可以传入一个指定类型的数组,该数组的元素类型应与集合的元素类型一致,返回值则是转换后的数组,该数组会保存集合中所有的元素。
六.数组转换为List
Arrays类中提供了一个静态方法asList,使用该方法我们可以将一个数组转换为对应的List集合。其方法定义为:static <T> List asList <T... a>;返回的List集合元素类型由传入的数组的元素类型决定。并且要注意的是:返回的集合我们不能对其增删元素,否则会抛出异常,并且对集合的元素进行修改会影响数组对应的元素。
七. List排序
Collections.sort方法实现排序
Collections是集合的工具类,它提供了很多便于我们操作集合的方法,其中就有用于集合排序的sort方法。该方法定义为:void sort(List<T> list);该方法的作用是对给定的集合元素进行自然排序
Collections的sort方法是对集合元素进行自然排序,那么两个元素对象之间就一定要有大小之分。这个大小之分是如何界定的?实际上,在使用Collections的sort排序的集合元素都必须是Comparable接口的实现类,该接口表示其子类是可比较的,因为实现该接口必须重写抽象方法:int compareTo(T t);该方法用于使当前对象与给定对象进行比较。若当前对象大于给定对象,那么返回值应为>0的整数。若小于给定对象,那么返回值应为<0的整数。若两个对象相等,则应返回0。Comparator接口一旦Java类实现了Comparable接口,其比较逻辑就已经确定,如果希望在排序的操作中临时指定比较规则,可以采用Compartor接口回调的范式。Comparator接口要求实现类必须重写其定义的方法: int compare(T o1,T o2);该方法的返回值要求:若o1>o2,则返回值应>0;若o1<o2,则返回值应<0;若o1=o2,则返回值应=0。
举报/反馈

倒骑毛驴的小码奴

92获赞 142粉丝
一个会敲Java代码程序猿。
关注
0
0
收藏
分享