java中ArrayList介绍及方法使用

ArrayList:
是java集合中的一种数据结构,继承List,实现了List的接口。底层是给予数组实现容量大小动态变化,其中还实现了序列化的接口Serializable接口。所以ArrayList支持快速访问、赋值、序列化的操作。ArrayList是通过数组去保存数据的,当构造ArrayList时,若是默认构造函数,则容量大小是10.当容量不足时,ArrayList会重新设置容量:新的容量 = 原始容量x3/2 +1 .ArrayList实现java.io.Serializable的方式。当写入到输出流时,先写入“容量”,再依次写入“每一个元素”;当读出输入流时,先读取“容量”,再依次读取“每一个元素”。

ArrayList的遍历源代码:
package 数据结构测试;

import java.util.ArrayList;
import java.util.Iterator;

public class Test_5 {
public static void main(String[] args) {
ArrayList list = new ArrayList();
for(int i = 0 ; i<10000000;i++) {
list.add(i);
}
INT(list);
For(list);
Foreach(list);

}

private static void Foreach(ArrayList<Integer> list) {
	long start;
	long end ;
	start = System.currentTimeMillis();
	for(Object a :list) {
	}
	end = System.currentTimeMillis();
	long c = end-start;
	System.out.println("foreach循环遍历 "+c+"ms");
}

private static void For(ArrayList<Integer> list) {
	long start;
	long end;
	start = System.currentTimeMillis();
	for(int i = 0 ; i<list.size(); i++) {
		list.get(i);
	}
	end = System.currentTimeMillis();
	long a = end - start;
	System.out.println("for循环遍历"+a+"ms");
}

private static void INT(ArrayList<Integer> list) {
	long start;
	long end ;
	Iterator<Integer> a = list.iterator();
	start = System.currentTimeMillis();
	while(a.hasNext()) {
		a.next();
	}
	end = System.currentTimeMillis();
	long c = end-start;
	System.out.println("迭代器遍历"+c+"ms");
}

}
在这里插入图片描述
三种遍历,for循环最快。迭代器遍历和foreach速度相当。

ArrayList常用方法:
add(E e)
将指定的元素添加到此列表的尾部。
void add(int index, E element)
将指定的元素插入此列表中的指定位置。
clear()
移除此列表中的所有元素。
contains(Object o)
如果此列表中包含指定的元素,则返回 true。
get(int index)
返回此列表中指定位置上的元素。
indexOf(Object o)
返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
isEmpty()
如果此列表中没有元素,则返回 true
remove(int index)
移除此列表中指定位置上的元素
set(int index, E element)
用指定的元素替代此列表中指定位置上的元素。
size()
返回此列表中的元素数
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值