您的位置:首页 > 编程语言 > Java开发

JAVA之List集合的ArrayList类与LInkedList类的使用,以及性能比较

2020-03-29 12:44 369 查看

List集合

List接口继承了Collection接口,而collection接口又继承了Interable

实现List接口的ArrayList类

数组结构实现,

动态数组:在内存里面是连续的内存空间存储

 

[code]import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

public class Demo01 {

public static void main(String[] args) {
//练习我们的集合

List  lt1 =new ArrayList();

List lt2 =new LinkedList();

System.out.println("ArrayList的增加操作");
//ArrayList的增加操作
lt1.add("String-字符串");
lt1.add(666);//整型
lt1.add("null");
for(Object i:lt1) {
System.out.println(i);

}
//ArrayList的查询操作

System.out.println("ArrayList的查询操作");

for(Object i:lt1) {
System.out.println(i);

}

//ArrayList的删除操作
System.out.println("ArrayList的删除操作");

lt1.remove(0);
for(Object i:lt1) {
System.out.println(i);
}

//ArrayList的修改操作
System.out.println("ArrayList的修改操作");

lt1.set(0,"修改");
for(Object i:lt1) {
System.out.println(i);

}

}

}

实现List接口的LinkedList类

列表结构物实现,

双向列表:在内存里面是不连续的内存空间存储

[code]import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

public class Demo02 {

public static void main(String[] args) {
//练习我们的集合

List  lt1 =new ArrayList();

List lt2 =new LinkedList();

System.out.println("LinkedList的增加操作");
//ArrayList的增加操作
lt2.add("String-字符串");
lt2.add(666);//整型
lt2.add("null");
for(Object i:lt2) {
System.out.println(i);

}
//ArrayList的查询操作

System.out.println("LinkedList的查询操作");

for(Object i:lt2) {
System.out.println(i);

}

//ArrayList的删除操作
System.out.println("LinkedList的删除操作");

lt2.remove(0);
for(Object i:lt2) {
System.out.println(i);
}

//ArrayList的修改操作
System.out.println("LinkedList的修改操作");

lt2.set(0,"修改");
for(Object i:lt2) {
System.out.println(i);

}

}

}

性能比较

[code]public void mainAl() {

List ao1 =new ArrayList();

List ao2 =new LinkedList();

long time1 =System.currentTimeMillis();
for(int a1=0;a1<nums.length;a1++) {

ao1.add(a1);

}
long time3 =System.currentTimeMillis();
for(int a1=0;a1<nums.length;a1++) {

ao2.add(a1);

}

long time2 =System.currentTimeMillis();
long timea1 = time3 -time1;

System.out.println("LinkedList()遍历所用的时间为:"+timea1+"ms");
long timea2 =time2-time1;
System.out.println("ArrayList()遍历所用的时间为:"+timea2+"ms");

}//没有顺序的操作LinkedList较快

 

  • 点赞
  • 收藏
  • 分享
  • 文章举报
独孤九孑 发布了19 篇原创文章 · 获赞 0 · 访问量 259 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐