Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4448字,纯文字阅读大概需要7分钟。
内容图文
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector](/upload/InfoBanner/zyjiaocheng/852/31770a3b3a754d17a3d609450aa2818f.jpg)
Collection的笔记:
/**存储对象考虑使用: * 1.数组, ①一旦创建,其长度不可变!② 长度难于应对实际情况 * 2.Java集合, ①Collection集合: 1.set: 元素无序,不可重复; 2.元素有序,可重复的集合--动态不定长数组 * ②Map集合, 具有映射关系的"key - value"对的集合 * --------------------------------- * 1.Collection接口 常用及操作 * ①size(),clear()②isEmpty(),③contains(),④add()方法 和remove()方法, ⑤ iterator 来返回迭代器对象 * ⑥addall() 和removeall() ,添加或者删除全部! ⑦Object[] toArray() ,将集合转换为Object数组 * 2.Collection 的遍历方法: * ① 转换成Object[]类进行输出,不常用 ; for(int i=0;i<s.length;i++) * ②使用迭代器进行遍历集合:1.声明 Iterator it= col2.iterator();2.hasNext();3.返回迭代中的下一个元素:it.next() * ③使用增强的for循环语句: for(Object o: collection) sout(o); //Object表示确定的类型 */
Collection的测试代码:
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708305.jpg)
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708338.jpg)
public class TestCollection { public static void main(String[] args) { ArrayList col = new ArrayList(); ArrayList col2 = new ArrayList(); col.add(123); col.add("QWQ"); col.add(new Date()); col2.addAll(col); Object[] s=col2.toArray(); //1.转换成Object[]类进行输出,不常用 for(int i=0;i<s.length;i++) System.out.print("\t("+s[i]+")"); System.out.println("--------------"); //2.使用迭代器进行遍历集合:1.声明 Iterator it= col2.iterator();2.hasNext();3.返回迭代中的下一个元素:it.next() Iterator it= col2.iterator(); while(it.hasNext()){ System.out.print("\t"+it.next()); } System.out.println("--------------"); //3.使用增强的for循环语句: for(Object o: collection)sout(o); //Object表示确定的类型 for (Object o: col2) System.out.print("\t"+o); } }View Code(已折叠)
Collection的测试结果:
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708305.jpg)
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708338.jpg)
(123) (QWQ) (Sun Oct 14 17:37:55 CST 2018)-------------- 123 QWQ Sun Oct 14 17:37:55 CST 2018-------------- 123 QWQ Sun Oct 14 17:37:55 CST 2018View Code
ArrayList和LinkedList的笔记:
/** ArrayList (本质:可变长数组 ):List 的主要实现类 * 易错点: 不可以使用下标直接进行索引,需要get()! * List中相对于Collection<E> 新增加的方法 * 0. 无参数(Object)类型声明构造: List list=new ArrayList(); * 有参数(String/int...)类型声明构造: List<String> list2=new ArrayList<String>(); * 1.E get(int index);//返回索引位置的值 * 2.E set(int index,E element); //设置下标为index位置的值 * 3.void add(int index,E element); //增加值 * 4.E remove(int int index) //删除一个值 * 5.int indexOf/lastIndexOf( o) //正向或逆向查找一个元素值 * 6.可以调用size()取长度,跑循环进行 get()遍历! * ------------- * 父类Collection接口 常用及操作 * * ①size(),clear()②isEmpty(),③contains(),④add()方法 和remove()方法, ⑤ iterator 来返回迭代器对象 * * ⑥addall() 和removeall() ,添加或者删除全部! ⑦Object[] toArray() ,将集合转换为Object数组 * ------------- * LinkedList是依靠链表实现的!优势: 常用来处理频繁的插入和删除操作; * * 1.对于在头部插入和内部删除元素, LinkedList每次为常量时间; 而同样的, ArrayList是线性时间! * * 1.对于定位访问, LinkedList每次为线性时间; 而同样的, ArrayList是常量时间! * ---------------- * * LinkedList的特有操作: (简直就是C++的STL库中的deque双端队列!) * 1.构造方法: LinkedList()/LinkedList(Collection c) * 2.添加头部或者在尾部: addFirst(E element)/addLast(E element) * 3.删除头部或者尾部: removeFirst()/removeLast() * ------------- * * Vector(古老的实现类,线程安全, 基本弃用了, JDK 1.0) */
ArrayList和LinkedList的测试代码:
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708305.jpg)
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708338.jpg)
public class TestList { public static void main(String[] args){ System.out.println("--------Test ArrayList--------"); List list=new ArrayList(); list.add(6666); list.add(0,"6666"); list.add(0,"6667");list.add(0,"6667"); list.set(0,"6666777"); for(int i=0;i<list.size();i++) System.out.print("\t"+list.get(i)); System.out.println("\n------Test ArrayList<String>----"); ArrayList<String> list2=new ArrayList<String>(); list2.add(0,"6666"); list2.add(0,"6667");list2.add(0,"6667"); list2.set(0,"6666777"); for (String s:list2) System.out.print("\t"+s); LinkedList<Integer> link1= new LinkedList<Integer>(); link1.addFirst(666); link1.addLast(7777); link1.addLast(7777); link1.removeLast(); LinkedList link2= new LinkedList(list2); //拿ArrayList来构造了LinkedList System.out.print("\nlink1: "); for (Integer i:link1) System.out.print("\t"+i); System.out.print("\nlink2: "); for (Object i:link2) System.out.print("\t"+i); } }View Code
ArrayList和LinkedList的测试结果:
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708305.jpg)
![Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector - 文章图片](/upload/getfiles/0001/2021/5/6/20210506042708338.jpg)
--------Test ArrayList-------- 6666777 6667 6666 6666 ------Test ArrayList<String>---- 6666777 6667 6666 link1: 666 7777 link2: 6666777 6667 6666View Code
内容总结
以上是互联网集市为您收集整理的Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector全部内容,希望文章能够帮你解决Java 基础 - Collection集合通用方法及操作/ArrayList和LinkedList的差别优势 /弃用的Vector所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。