在前面我们学习了数组,数组可以保存多个元素,但在某些情况下无法确定到底要保存多少个元素,此时数组将不再适用,因为数组的长度不可变。例如,要保存一个学校的学生,由于不停有新生来报道,同时也有学生毕业离开学校,这时学生的数目很难确定。为了保存这些数目不确定的元素,JDK中提供了一系列特殊的类,这些类可以存储任意类型的元素,并且长度可变,统称为集合。在这里,我们先介绍ArrayList集合,其他集合在后续课程中学习。

ArrayList集合是程序中最常见的一种集合,它属于引用数据类型(类)。在ArrayList内部封装了一个长度可变的数组,当存入的元素超过数组长度时,ArrayList会在内存中分配一个更大的数组来存储这些元素,因此可以将ArrayList集合看作一个长度可变的数组。

ArrayList创建变量的步骤
* A: ArrayList创建变量的步骤
* a: 导入包 java.util包中
* b: 创建引用类型的变量
数据类型< 集合存储的数据类型> 变量名 = new 数据类型<集合存储的数据类型>();
集合存储的数据类型: 要将数据存储到集合的容器中
创建集合引用变量的时候,必须要指定好,存储的类型是什么
* c: 变量名.方法
注意: 集合存储的数据,8个基本类型对应8个引用类型
存储引用类型,不存储基本类型

ArrayList的常见方法
* A: ArrayList的常见方法
* a: add(参数) 向集合中添加元素
* b: get(int index) 取出集合中的元素,get方法的参数,写入索引
* c: size() 返回集合的长度, 集合存储元素的个数

ArrayList补充方法
* A: ArrayList补充方法
* a: add(int 索引,存储的元素) 将元素添加到指定的索引上
* b: set(int 索引,修改后的元素) 将指定索引的元素,进行修改
* c: remove(int 索引) 删除指定索引上的元素
* d: clear() 清空集合中的所有元素
* B: 案例代码
import java.util.ArrayList;
public class ArrayListDemo_3{
public static void main(String[] args){
  ArrayList<Integer> array = new ArrayList<Integer>();
    array.add(8);
    array.add(2);
    array.add(56);
    array.add(6);
    array.add(7);
    array.set(0,10);
    array.remove(4);
    array.clear();
for(int i = 0 ; i < array.size(); i++){
System.out.println( array.get(i) );
      }
    }
}

案例作业:随机点名器

java全栈day05--ArrayList的基本功能的更多相关文章

  1. java全栈day04--方法

    day04内容介绍 1  方法基础知识 2  方法高级内容 3  方法案例 一  方法的概念 A:为什么要有方法 提高代码的复用性 B   什么是方法 完成特定功能的代码块 修饰符  返回值类型  方 ...

  2. Java全栈学习路线、学习资源和面试题一条龙

    肝了一个月,终于把Java学习路线.面试题资源和电子书资源都整理好了. Java 从基础到微服务的学习路线,其中还包括科班知识.学习建议.后续的学习引导和相应的学习资源(视频.书籍.网站),还整理了J ...

  3. Ninja:Java全栈Web开发框架-Ninja中文网

    相信不少业界人士都还停留在SSh的时代 其实我想给大家推荐的一个轻量级框架那就是Ninja; Ninja是一个Java全栈Web开发框架,稳定.快速.非常高效. 商业价值 在你的下一个项目中,Ninj ...

  4. JAVA全栈工程师应具备怎样的知识体系?

    Java是超高人气编程语言,拥有跨平台.面向对象.泛型编程等特性.在TIOBE编程语言排行榜中,连续夺得第一宝座,而且国内各大知名互联网公司,后端开发首选语言:非Java莫属. 今天是针对各类目有更详 ...

  5. Java全栈工程师知识体系介绍

    Java全栈工程师,是指掌握多种技能,并能利用多种技能独立完成产品的人,也叫全端工程师(同时具备前端和后台能力),英文Full Stack developer. 那么想要成为一名合格的Java全栈工程 ...

  6. 2019 Java 全栈工程师进阶路线图,一定要收藏

    技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点松哥是深有体会的. 我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面 ...

  7. 2019年java全栈工程师学习大全

    技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点我是深有体会的. 我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面临 ...

  8. Java 全栈知识体系 - 个人博客

    摘自:https://www.pdai.tech/ 著作权归https://www.pdai.tech所有. 链接:https://www.pdai.tech/ Java 全栈知识体系 包含: Jav ...

  9. java全栈商业小程序开发

    此次开发只为学习和巩固,第一次学习开发 一.开发前需要了解: 开发框架MVVM.痛点.开源工具.VUE前端框架.微信支付模块.uni-app前端框架.小程序申请.开发工具下载.编写测试小程序.小程序结 ...

  10. Java全栈,MySQL搞透,架构手到擒来,还有面试官搞不定?

    五月最后一天啦,时间过得真快,做技术的难免做了几年就感觉很迷茫,那就需要多读点书,多学点技术才能有安全感. 栈长之前推荐过不少极客时间的课程,几乎每周都推荐一个,很多朋友评论说,课程太多学不过来,今天 ...

随机推荐

  1. 页面报错Uncaught SyntaxError: Unexpected identifier

    错误描述:未捕获的语法错误:意想不到的标识符. 如图所示:检查之后发现是页面js内缺少“,”引起的.添加之后就OK了.

  2. Dubbo与Zookeeper

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...

  3. hl7消息中和时间有关的字段的格式

    hl7消息中有许多segment(段)包含时间类型的Field.常用的MSH, EVN, PID中的时间字段及其格式为: 1. MSH-7, Date/time Of Message为yyyyMMdd ...

  4. Azure Managed Disk操作

    Azure Managed Disk对原有的Page Blob进行了一次封装.使得Azure VM的Disk操作变得非常简单.本文将介绍实际操作中针对Manage Disk的一些操作. 一.创建Man ...

  5. Java基础--CountDownLatch

    CountDownLatch是线程同步辅助类,它允许一个或多个线程wait直到countdown被调用使count为0. CountDownLatch是在java1.5被引入,存在于java.util ...

  6. struts2获得需要的文件或者访问路径

    在struts2中,上传文件的时候遇到一个很好用但是失效的方法,找到如下替代.并且测试了一下request可以得到的相关路径. 得到request对象: HttpServletRequest requ ...

  7. C# 保存文件如有重名在原名后加(*)

    C#保存文件如有重名加() **(1) //Myadd 处理重名 private string GetNewPathForDupes(string path) { string directory = ...

  8. PHP类(四)-类的继承

    类的继承就是从已经定义的类中继承数据,也可以重新定义或者加入一些数据. 被继承的类称为父类,基类,超类 继承的类称为子类,派生类 在PHP中只能使用单继承,也就是一个类只能从一个类中继承数据,但是一个 ...

  9. 重新认识synchronized(上)

    synchronized在JDK5之前一直被称为重量级锁,是一个较为鸡肋的设计,而在JDK6对synchronized内在机制进行了大量显著的优化,加入了CAS,轻量级锁和偏向锁的功能,性能上已经跟R ...

  10. 第六章 Java并发容器和框架

    ConcurrentHashMap的实现原理与使用 ConcurrentHashMap是线程安全且高效的hashmap.本节让我们一起研究一下该容器是如何在保证线程安全的同时又能保证高效的操作. 为什 ...