ArrayList

ArrayList 使用连续的内存单元存储数据元素,是一个其容量能够动态增长的动态数组。

当添加或删除数据元素时(最后位置除外),ArrayList 需要移动其被添加(或删除)元素后面的所有元素。所以插入和删除元素时较慢,查询较快。

同时,ArrayList线程是不安全的!一般单线程使用ArrayList,而在多线程一般使用Vector和CopyOnWriteArrayList。

java相关视频教程推荐:java在线学习

注意:

1、ArrayList已经覆盖了tostring 直接可以打印结果。

2、toArray() 会把元素转化为 Object类型。

ArrayList遍历方式

ArrayList有三种遍历方式,分别是:

1、迭代器遍历Iterator it = arrayList.iterator();

while(it.hasNext()){

System.out.print(it.next() + " ");

}

2、索引值遍历for(int i = 0; i < arrayList.size(); i++){

System.out.print(arrayList.get(i) + " ");

}

3、for循环遍历for(Integer number : arrayList){

System.out.print(number + " ");

}

注意:需要说明的是,遍历ArrayList时,通过索引值遍历效率最高,for循环遍历次之,迭代器遍历最低。

更多相关文章教程推荐:java语言入门

java arraylist 遍历_java集合ArrayList的三种遍历方式相关推荐

  1. java定义数组_java中数组的三种定义方式_java中数组的定义及使用方法(推荐)...

    java中数组的三种定义方式 java中,数组是一种很常用的工具,今天我们来说说数组怎么定义 [java] view plain copy /** * 数组的三种定义方法 * 1.数组类型[] 数组名 ...

  2. java中map的遍历方法_Java中Map的三种遍历方式

    集合中的三种遍历方式,如下代码: import java.util.Collection; import java.util.HashMap; import java.util.Iterator; i ...

  3. Java多线程:多线程同步安全问题的 “三“ 种处理方式 ||多线程 ”死锁“ 的避免 || 单例模式”懒汉式“的线程同步安全问题

    Java多线程:多线程同步安全问题的 "三" 种处理方式 ||多线程 "死锁" 的避免 || 单例模式"懒汉式"的线程同步安全问题 每博一文 ...

  4. java集合 HashMap的三种遍历方式

    前言: HashMap的集合中的比重是无可厚非的,由自身的数组+链表/红黑树构成的(JDK 1.8),这样使得HashMap优点表现出来: 数组查询效率快: 链表的插入和删除效率也加快 但是HashM ...

  5. JAVA中集合去重的三种基本方式

    在学习JAVA的过程中,总是会碰见对集合中的元素进行去重的要求,在这里总结了三种基本的去重方法. 主要的思想就是:先取元素,后进行比较,最后放回去. 案例如下: package eliminate_d ...

  6. java se 定时任务_Java实现定时任务的三种方法

    一.Quartz的特点 按作业类的继承方式来分,主要有以下两种: 作业类继承org.springframework.scheduling.quartz.QuartzJobBean类的方式作业类不继承o ...

  7. java string分割_java 字符串分割的三种方法(总结)

    最近在项目中遇到一个小问题,一个字符串分割成一个数组,类似String str="aaa,bbb,ccc"; 然后以","为分割符,将其分割成一个数组,用什么方 ...

  8. java如何实现线程_java中线程的三种实现方式

    packagecom.four.day01;importjava.util.concurrent.Callable;importjava.util.concurrent.ExecutionExcept ...

  9. java数组初始_java数组初始化的三种方式

    第一种方式:通过给定数组长度来赋值: public static void main(String[] args) { // TODO Auto-generated method stub //第一种 ...

最新文章

  1. 关于无服务器(Serverless)架构你要搞懂的8件事
  2. dac0832产生梯形波程序C语言,在8086系统中用DAC0832输出一个三角波,一个梯形波,和一个正弦波。...
  3. MFC(WTL)编辑框长度限制
  4. ASP.NET Web Pages 的冲突版本问题
  5. UIWebView UITextView
  6. java第二章复习_JAVA第二章知识点
  7. XML轻松学习手册(1)XML快速入门
  8. Java并发编程实战————Executor框架与任务执行
  9. build unity 丢失_【厚积薄发】Unity 2017打包iOS版本参数丢失
  10. 【splay】hdu 4453 2012杭州赛区A题
  11. C# 实现 MD5 和 SHA1 加密算法_哈希函数 hush
  12. matlab 传函将s换为jw,已知单位负反馈系统开环传递函数为20 s(0.5s 1),
  13. eventFilter能进入dragEnter但没有event::drog
  14. iOS开发面试和底层学习视频整理合集
  15. 键盘符号中英文对照表
  16. 对指定网站渗透的一些总结
  17. 电脑城最简单骗局,仍然有无数人上当
  18. 老王家esp8266及老五家WS2818灯带
  19. 2023年湖北省建筑类初级职称助理工程师电子版证书申报查询
  20. ENVI标准格式文件转换为.tif文件——基于ENVI库函数

热门文章

  1. 02.从0到1,软件基础平台供应商技术团队建设例程
  2. python文件只读打开模式是,在Python中将文件更改为只读模式
  3. Linux根目录下各文件夹的含义和用途
  4. kubernetes基础之docker部署wizard文档管理系统平台(亲测有效)
  5. 网盘挂载Alist+RaiDrive 开机自启动导入播放列表
  6. java生成word目录_java代码生成word目录
  7. Vue 报错 | warn ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed. You must insta
  8. STM32采集AD的输入阻抗问题
  9. Python+Selenium安装及环境配置
  10. 3D slicer勾画流程