一.认识ArrayList:

1.ArrayList是一个动态的数组(集合),可以在生成后对其中的内容进行增删改。相对于Array(静态数组),使用更灵活,可以对其内容进行修改。

2.实现的接口是CollectionIterableListRandomAccessCloneableSerializable接口。

3.ArrayList的父类是AbstractList,它的子类有:AttributeList,RoleList,RoleUnresolvedList。

4.ArrayList的源码中可以看出,它的底层是用数组实现的。

简单操作:

二.ArrayList详解:

1).构造方法:

a)ArrayList()

构造一个初始容量为十的空列表。

例: ArrayList array = new ArrayList();

b)ArrayList(Collection)

构造一个包含指定Collection的元素列表,按照返回顺序排序。

c)ArrayList(int)

构造一个指定容量的空列表。

2).方法:

帮助文档中的截图:

可能在这里看不清楚,大家可以看帮助文档的。

3).ArrayList的使用注意:

如果增加的元素个数超过10个,就会在底层重新生成一个新的数组,长度为原数组长度的1.5倍+1,然后就将原数组中的内容复制过来,后续的要增加的内容会在新数组后添加,如果在超出范围,继续重复上边的操作。

删除集合中的元素时,删除的元素位置让后一个元素代替,统一的向前移动一个位置。

集合中存放的只能是对象,而且都是Object类型,原生数据类型无法放置在里面,所以我们需要包装类,来进行存放。 例: array.add(new Integer(1));

当取出集合中的值时,需要进行强制转换,转换为存进去时的类型。

部分方法的使用:

菜鸟的学习之路(9) — ArrayList类相关推荐

  1. typescript学习之路(四) —— ts类的继承(包含es5以及es6的类继承)

    上一文已经写了es5,es6等类的定义,所以本章主要写es5和es6的继承,由于es6的继承和ts的继承如出一辙,只是加了类型定义而已,所以ts的继承稍微写下,不会太详细. 文章目录 es5继承 原型 ...

  2. Java学习之路-day-09 ArrayList集合

    Java ArrayList集合 每日一句 1. ArrayList 1.1 ArrayList类概述 1.2 ArrayList类常用方法 1.3 ArrayList存储字符串并遍历 1.4 Arr ...

  3. 菜鸟的学习之路(10) — LinkedList类

    一.认识LinkedList类: 实现的接口:Serializable,Cloneable,Iterable,Collection,Deque,List,Queue 父类:AbstractSequen ...

  4. 菜鸟的学习之路(13) —TreeSet类的排序

    一.TreeSet类解析: 1.TreeSet是依靠TreeMap实现的. 2.TreeSet中不能有重复的元素,而且是有序排列的. 3.自定义的类要想实现排序,实现Comparable接口,重写co ...

  5. 菜鸟的学习之路(12) —HashSet类详解

    一.HashSet类详解: HashSet类的底层是HaskMap实现的.存入HashSet的元素是有HashMap的key来保存的.而HashMap的值是一个Object对象. HashSet中是不 ...

  6. 菜鸟的学习之路(7) — 包(package)、Object类和String类

    一.包(package): 1.包:用于将不同功能的类分门别类,放在不同的目录(包)下. 命名规范:一般采用自己在互联网上的域名称作为自己程序包的唯一前缀,且域名翻转,每个字母小写. 例如:bztc. ...

  7. 爬虫|菜鸟的学习之路——爬取一本小说

    前言:本次爬取的是全书网的某一本小说并以.TXT格式下载到本地. 工具:python3 和 pycharm Python库:urllib.request 和 re 注意:python是用3以上的版本, ...

  8. java学习之路7——常用类

    一.Object类 超类.基类.左右类的直接或者间接父类,位于继承树的最顶层. 任何类,如果没有写extends显示继承某个类,默认都直接继承Object类.否则为间接继承. Object类中所定义的 ...

  9. 菜鸟的学习之路(8) — 数组(Array)

    一.数组(Array): 1.数组:相同类型数据的集合就叫做数组. 定义的数组: type[ ] 变量名 = new type[数组中的元素个数]; 或 type 变量名[] = new type[数 ...

最新文章

  1. C++__conversion function,Non-explicit one argument constructor
  2. loadruner中加中Java_Script
  3. layerui的弹出层只显示两行英文字符不换行的解决方法
  4. 转,Oracle中关于处理小数点位数的几个函数,取小数位数,Oracle查询函数
  5. hibernate注解实体类(Dept.java)
  6. 去哪儿-08-city-search
  7. python病毒usb文件自动安装_将文件自动复制到USB上
  8. Oracle分析函数-nulls first/nulls last
  9. python_numpy的基础
  10. 【学习笔记3】hook、冒烟测试、Procexp的使用
  11. 十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!
  12. git制作patch补丁
  13. 【C++】日期类题目总结
  14. 201704 创建财务凭证函数
  15. 微信小程序引入组件以及catchtouchmove实现拖动效果
  16. 【线上问题】线上故障分析-故障分级,原因,分类,混沌工程,排除方法
  17. 送一个大马给有需要的人,请不要做非法之事
  18. 蓝桥杯单片机设计与开发笔记(一)
  19. 光纤网卡和HBA卡有什么区别
  20. QBC以及QBE例子

热门文章

  1. 如何查看linux中的ssh端口开启状态
  2. 分库分表读写分离总结
  3. Python中字符串反转的一个简单操作
  4. c#之线程总结(一)
  5. 防止ViewPager中的Fragment被销毁的方法
  6. 写地道的Python
  7. #import和@class 的区别
  8. MySQL数据库基本操作1
  9. 基于route-map的策略路由
  10. iOS10推送适配完整说明