[javaSE] 集合框架(ArrayList,LinkedList,Vector)
2023-02-18 15:47:11 时间
ArrayList特点:底层使用数组数据结构,查询速度快(使用脚标查),插入删除慢(索引要改变)
LinkedList特点:底层使用链表数据结构,查询慢(需要一个一个去问),插入删除快
Vector特点:底层是数组数据结构,线程同步,被ArrayList替代了
ArrayList
import java.util.ArrayList; public class ArrayListDemo { public static void main(String[] args) { ArrayList lists=new ArrayList(); lists.add("test01"); lists.add("test01"); lists.add("test02"); lists.add("test02"); lists=getSingleArray(lists); System.out.println(lists);//输出:[test01, test02] } /** * 去除重复 * @param array * @return */ public static ArrayList getSingleArray(ArrayList array){ ArrayList res=new ArrayList(); for(Object obj:array){ if(!res.contains(obj)){ res.add(obj); } } return res; } }
LinkedList特有的功能与first,last有关,例如 addFirst(),getFirst(),removeFirst()
import java.util.LinkedList; public class LinkedListDemo { public static void main(String[] args) { LinkedList links=new LinkedList(); links.add("link01"); links.add("link02"); links.add("link03"); while(!links.isEmpty()){ System.out.println(links.pollFirst()); } } }
Vector特有的功能与element有关的,枚举
import java.util.Enumeration; import java.util.Vector; /** * Vector demo * @author taoshihan * */ public class VectorDemo { public static void main(String[] args) { Vector v=new Vector(); v.add("vector1"); v.add("vector2"); v.add("vector3"); Enumeration e=v.elements(); while(e.hasMoreElements()){ System.out.println(e.nextElement()); } } }
相关文章
- 透过现象看本质:Java类动态加载和热替换
- logstash处理多行日志-处理java堆栈日志
- Java High Level REST Client 使用地理位置查询
- 垃圾回收你懂,Java垃圾回收你懂吗?
- 几款Java开发者必备常用的工具,准点下班不在话下
- Ulysses for Mac(最好用的Markdown文本编辑写作工具)
- Xilinx MPSoC FSBL中的看门狗的用法总结
- 【FusionCompute】使用VMware Workstaion安装部署VRM(三)
- 【FusionCompute】添加CNA主机到VRM管理节点(四)
- RabbitMQ:安装配置
- RabbitMQ:消息模型
- 【FusionCompute】基于FreeNAS部署并使用虚拟存储(五)
- 【FusionCompute】创建虚拟机失败(六)
- Xshell同步复制粘贴Windows的东西
- 【OpenFiler】使用虚拟机安装openfiler
- 什么是BPM系统?BPM流程管理系统介绍
- Online DDL和Cardinality
- MRR和ICP
- 犀牛鸟中学科学人才培养计划喜报:祝贺北京一零一中学李一昕同学获丘成桐中学科学奖全球总决赛金奖!
- 耗时减半?腾讯云OCR只做了3件事