Java基础——ArrayList与LinkedList(二)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java基础——ArrayList与LinkedList(二),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2845字,纯文字阅读大概需要5分钟。
内容图文
![Java基础——ArrayList与LinkedList(二)](/upload/InfoBanner/zyjiaocheng/1124/5e894b6664474bb2a2ebf7189928d8ed.jpg)
今天练习ArrayList与LinkedList,在网上看到有关它俩应用效率的题型。觉得很有价值,保留一下。
1 import java.util.ArrayList; 2 import java.util.LinkedList; 3 import java.util.List; 4 5 public class CollT5 { 6 static final int N = 50000; 7 8staticlong timeList(List<Object> list) { 910long start = System.currentTimeMillis(); 1112 Object o = new Object(); 13for (int i = 0; i < N; i++) 14 list.add(0, o); 15return System.currentTimeMillis() - start; 16 } 1718publicstaticvoid main(String[] args) { 19 System.out.println("ArrayList耗时:" + timeList(new ArrayList<Object>())); 20 System.out.println("LinkedList耗时:" + timeList(new LinkedList<Object>())); 21 } 22 }
1 import java.util.ArrayList; 2 import java.util.Collections; 3 import java.util.LinkedList; 4 import java.util.List; 5 6 public class CollT6 { 7 static List<Integer> array = new ArrayList<Integer>(); 8static List<Integer> linked = new LinkedList<Integer>(); 910publicstaticvoid main(String[] args) { 1112for (int i = 0; i < 10000; i++) { 13 array.add(i); 14 linked.add(i); 15 } 16 System.out.println("array time:" + getTime(array)); 17 System.out.println("linked time:" + getTime(linked)); 18 System.out.println("array insert time:" + insertTime(array)); 19 System.out.println("linked insert time:" + insertTime(linked)); 2021 } 2223publicstaticlong getTime(@SuppressWarnings("rawtypes") List list) { 24long time = System.currentTimeMillis(); 25for (int i = 0; i < 10000; i++) { 26 @SuppressWarnings("unchecked") 27int index = Collections.binarySearch(list, list.get(i)); 28if (index != i) { 29 System.out.println("ERROR!"); 30 } 31 } 32return System.currentTimeMillis() - time; 33 } 3435 @SuppressWarnings("unchecked") 36publicstaticlong insertTime(@SuppressWarnings("rawtypes") List list) { 37long time = System.currentTimeMillis(); 38for (int i = 100; i < 10000; i++) { 39 list.add(5000, i); 40 } 41return System.currentTimeMillis() - time; 4243 } 4445 }
附加:
遇到java类型后面跟三个点是代表的情况了,就补充一下:
1 // java类型后面跟三个点是代表可以接受多个实际参数,这里的多个指的是不限个数,可以是一个、两个、三个甚至更多。 2 // java中类型后面加三个点是java1.5之后出现的新的内容. 3 // 使用在函数的形参上,相当于一个数组,调用函数时传递多少了实际参数,都可以存储到这个形参上. 4 // 需要注意的是,使用这个形参必须放在最后一位形参位置上,否则会报错! 5 // 即,可变数组参数。用...的话,传参数时可传可不传,传的话,可以是一个个并列地传,也可以直接是一个数组。 6 // 在方法里取时,s是一个数组,如果调用时什么都没有传,那么s的长度就是0。传的时候传了几个,s的长度就是几。 7 public class CollT4 { 8 public static void main(String[] args) { 9 printString(); 10 System.out.println("=========="); 11 printString(new String[] { "我", "和", "你" }); 12 System.out.println("=========="); 13 printString("我", "和", "你"); 14 } 1516publicstaticvoid printString(String... str) { 17if (str.length == 0) { 18 System.out.println("没有传参数。"); 19 } 20for (int i = 0; i < str.length; i++) { 21 System.out.println(str[i]); 22 } 23 } 24 }
相关参考链接:
http://pengcqu.iteye.com/blog/502676
原文:http://www.cnblogs.com/1693977889zz/p/7074189.html
内容总结
以上是互联网集市为您收集整理的Java基础——ArrayList与LinkedList(二)全部内容,希望文章能够帮你解决Java基础——ArrayList与LinkedList(二)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。