一、ArrayList是List接口下的一个实现类,实现了长度可变的、连续的数组;拥有数组的特性。

遵循了LIst的规则:不唯一的、有序的。

如果没有增加泛型的话,集合中可以添加任何类型的数据。

使用ArrayList类之前,需要导入相应的接口和类:

import java.util.ArrayList;

import java.util.LIst;

ArrayList对于查询数据数据,

添加泛型后:

使用对象类型

在ArrayLisit中提供了很多方法用于对集合的操作,以下列举常用方法

ArrayList 的优点:适合随机读取的时候,读取速度快,可以一步get(index)。

缺点:添加值很慢——一方面,添加数据在array中间的时候,需要移动后面的全部数据;另一方面,当长度大于初始长度的时候,每添加一个数,都会需要扩容。

实践操作:
                     对程序Debug调试,可以看出当我向集合插入一条数据,后面的数据都需要往后移动,这样对于程序运行速度等有一定的影响;

以下是jdk帮助文档提供的详细方法

java基础之集合框架--使用ArrayList类动态 存储数据的更多相关文章

  1. Java基础--说集合框架

    版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...

  2. java基础37 集合框架工具类Collections和数组操作工具类Arrays

    一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...

  3. 黑马程序员——【Java基础】——集合框架

    ---------- android培训.java培训.期待与您交流! ---------- 一.集合框架概述 (一)集合框架中集合类关系简化图 (二)为什么出现集合类? 面向对象语言对事物的体现都是 ...

  4. Thinking in java基础之集合框架(转载)

    集合简介(容器)把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合,例如这里有20个苹果,我们把每一个苹果当成一个东西(一个对象),然后我们借用袋子把这20个苹果装起来,而这个袋子就是集合(也叫 ...

  5. Java基础之集合框架(Collection接口和List接口)

    首先我们说说集合有什么作用. 一.集合的作用 1.在类的内部,对数据进行组织: 2.简单而快速的搜索大数量的条目: 3.有的集合接口,提供一系列排列有序的元素,并且可以在序列中间快速的插入或者删除有关 ...

  6. java基础之集合框架

    6.集合框架: (1)为什么出现集合类? 面向对象对事物的体现都是以对象的形式,为了方便对多个对象的操作,就对对象进行存储. 集合就是存储对象最常用的一种方式. (2)数组和集合都是容器,两者有何不同 ...

  7. Java基础之集合框架类及泛型简介

    Collection接口 Collection 通用的常见方法 add()添加一个元素,可以指定脚标 addAll()将一个collection放入 clear()清除 remove()删除元素,返回 ...

  8. Java : java基础(2) 集合&正则&异常&File类

    Obj 方法: hashCode() 返回内存地址值, getClass() 返回的时运行时类, getName() 返回类名, toString() 把名字和hashCode() 合在一起返回,如果 ...

  9. Java基础之集合框架——使用堆栈Stack<>对象模拟发牌(TryDeal)

    控制台程序. public enum Rank { TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK, QUEEN, KING, A ...

随机推荐

  1. idea+maven下jrebel的安装破解

    链接地址:https://www.cnblogs.com/wang1024/p/7211194.html

  2. css实现礼券效果

    <template> <div class="demo"> <div class="stamp stamp01"> < ...

  3. 解决git pull/push每次都需要输入密码问题 和 HttpRequestException encountered

    如果我们git clone的下载代码的时候是连接的https://而不是git@git (ssh)的形式,当我们操作git pull/push到远程的时候,总是提示我们输入账号和密码才能操作成功,频繁 ...

  4. Centos7 HyperLedger Fabric 1.4 生产环境部署

    Kafka生产环境部署案例采用三个排序(orderer)服务.四个kafka.三个zookeeper和四个节点(peer)组成,共准备八台服务器,每台服务器对应的服务如下所示: kafka案例网络拓扑 ...

  5. 【Linux】Set CentOS no GUI default

    [root@localhost ~]#vi /etc/inittab 重点看下面这部分代码 #   0 - halt (Do NOT set initdefault to this)          ...

  6. tp5命令行

    手册->命令行->自定义命令行 1.第一步,配置command.php文件 2.第二步,建立命令类文件 注意:该文件中代码,从文档中粘,以防写错. 名字啥的都不用改,就改命名空间 和 定义 ...

  7. selenium之chrome驱动版本

    chrome之selenium驱动: 各版本驱动,可以到如下地址下载,并查看版本: http://chromedriver.storage.googleapis.com/index.html 查看版本 ...

  8. http协议状态码及其意义

    什么是状态码? 状态码的作用是:服务器告诉客户端,发生了什么事. 在http协议中状态码出现在http response 的第一行.它会返回一个三位数的状态码和状态信息.状态码为了便于程序进行处理,而 ...

  9. springboot自动生成mysql的DAO层代码

    springboot提供了强大丰富的整合内容,但是每次要写一堆dao层的xml或者数据库相关的配置代码的时候,还是挺繁琐又容易出错的. 可以用mybatis-generator自动生成代码: 只需要加 ...

  10. Query a JSON array in SQL

    sql 中存的json 为数组: [{"Level":1,"Memo":"新用户"},{"Level":2," ...