初学ArrayList的一点心得

ArrayList

 以下内容摘自百度:

ArrayList就是动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了动态的增加和减少元素,实现了ICollection和IList接口,灵活的设置数组的大小等好处

List 接口的大小可变数组的实现,位于API文档的java.util.ArrayList<E>。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)

以一个初学者的角度,姑且认为是一个可以自我调节大小的数组。

我所了解的实现方法,是在内部定义一个长度为10 的数组,如果不够用,就将长度扩展为原来的两倍。所以在ArrayList的的getSize()方法中,所得到的是实际存入元素的总数,而不是ArrayList的实际长度。当然了,目前的实际应用中,不用管这么多。

常用方法:

    ArrayList()---构造器。
      注意,ArrayList中元素类型的指定用<>完成
      e.g. (List) Arraylist<beauty> B413 = new ArrayList<beauty>();
    add(Object o) ----void 向线性表里加入对象参数。
    add(int index, Object o)----void 向线性表的指定位置加入对象参数。
    clear()----void 删除线性表中的所有元素。
    contains(Object o)----boolean 查看线性表中是否含有元素。

    get(int index) -----Object 返回特定下标的元素。

    indexOf(Object o)-------int 返回线性表中第一个匹配元素的下标
    isEmpty()------boolean 查看线性表是否为空
    lastIndexOf(Object o)-----int 返回线性表中最后一个匹配元素的下标
    remove(Object O)------void 移除元素
    size() -------int 返回线性表中元素的个数
    remove(int index)-------void 移除特定下标处的元素
    set(int index, Object o)------设置特定下标处的元素

    toString-------String 把对象转换成String类型

e.g:

package test2;
import java.util.*;
public class TstB413 {
	public static void main(String[] args) {
		
		List B413 = new ArrayList();
		System.out.println("Nobody's here?"+B413.isEmpty());
		//String m1 = input.next();
		B413.add("hsy");
		System.out.println("Nobody's here?"+B413.isEmpty());
		
		B413.add("lmy");
		
		B413.add("hjy");
		
		B413.add("mn");
		
		B413.add("qyj");
		
		B413.add("xy");
		Collections.sort(B413);
		System.out.println(B413);
		System.out.println("How many people in B413?"+B413.size());
		System.out.println("Who's NO.2?"+B413.get(1));
		B413.remove(1);
		System.out.println("How many people in B413?"+B413.size());
		System.out.println(B413);
		B413.set(1, "lmy");
		System.out.println(B413);
		B413.clear();
		System.out.println("How many people in B413?"+B413.size());
		System.out.println("Nobody's here?"+B413.isEmpty());
	}
	
}

注:由于ArrayList是Collections下属的类,所以可用Collections.sort()方法进行排序。

ArrayList和数组的比较

数组在创建时必须确定大小
ArrayList会在删除或添加元素时自动调整大小
存放对象给数组的时候必须指定位置,而且索引越界时会报错
ArrayList的add方法,既可以在指定位置添加元素,又可以直接在末尾添加元素,让ArrayList自行指定大小
对于数组来讲,得到一个元素要使用方括号,这是个特殊的语法,而ArrayList是一个普通的对象,没有这种用法

猜你喜欢

转载自blog.csdn.net/weixin_41934068/article/details/80246590
今日推荐