杨老师课堂之ArrayList集合解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kese7952/article/details/80542813 ArrayList集合常用方法的解析ArrayList集合常用方法的解析1.
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kese7952/article/details/80542813

ArrayList集合常用方法的解析

1.概述

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

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

2.

1.1集合的创建

创建集合的常用格式在此说明一下:

导包:import java.util.ArrayList;

创建对象:与其他普通的引用数据类型创建方式完全相同,但是要指定容器中存储的数据类型:

ArrayList<要存储元素的数据类型>变量名 = new ArrayList<要存储元素的数据类型>();

1、集合中存储的元素,只能为<>括号中指定的数据类型元素;

2、“<要存储元素的数据类型>”中的数据类型必须是引用数据类型,不能是基本数据类型;

我们通过举几个例子,来明确集合的创建方式:

  • 存储String类型的元素
    • ArrayList list = new ArrayList();
  • 存储int类型的数据
    • ArrayList list = new ArrayList();
  • 存储Phone类型的数据
    • ArrayListlist = new ArrayList();

1.2 集合中常用方法

​ 接下来,我们来学习下ArrayList集合提供的一些常用方法,如下表:

通过代码演示上述方法的使用:ArrayListDemo01.java

package cn.javabs.list.demo;
import java.util.ArrayList;
public class ArrayListDemo01 {
 public static void main(String[] args) {
   // 创建ArrayList集合
   ArrayList<String> list = new ArrayList<String>();
   // 向集合中添加元素
   list.add("stu1");
   list.add("stu2");
   list.add("stu3");
   list.add("stu4");
   // 获取集合中元素的个数
   System.out.println("集合的长度:" + list.size());
   // 取出并打印指定位置的元素
   System.out.println("第1个元素是:" + list.get(0));
   System.out.println("第2个元素是:" + list.get(1));
   System.out.println("第3个元素是:" + list.get(2));
   System.out.println("第4个元素是:" + list.get(3));
 }
}

代码运行后截图:

1.3 集合中常用方法

通过集合遍历,得到集合中每个元素,这是集合中最常见的操作。集合的遍历与数组的遍历很像,都是通过索引的方式,集合遍历方式如下:ArrayListDemo02.java

1 package cn.javabs.list.demo;
2  import java.util.ArrayList;
3  public class ArrayListDemo02 {
4    public static void main(String[] args) {
5      //创建ArrayList集合
6      ArrayList<Integer> list = new ArrayList<Integer>();
7      //添加元素到集合
8      list.add(13);
9      list.add(15);
10      list.add(22);
11      list.add(29);
12      //遍历集合
13      for (int i = 0; i < list.size() ; i++) {
14        //通过索引,获取到集合中每个元素
15        int n = list.get(i) ;
16        System.out.println(n);
17      }
18    }
19  }

上述代码中,第5行定义了一个可以存储int元素的集合;第7-10行,实现将int类型数值存储到集合中;

​ 第12-16行,实现遍历集合元素。这里要强调一点,get方法返回值的类型为集合中元素的类型。

1.4 集合中的常用方法补充

ArrayList集合提供的一些常用方法,如下表:

  • boolean add(int index, Object obj)

    • 功能:在集合中指定index位置,添加新元素obj
    • 功能说明:假设集合list中有元素[“java”,“javaEE”],当使用add(1,“javaWeb”)后,集合list中的元素为[“java”,“javaWeb”,“JavaEE”]。
  • Object set(int index, Object obj)

    • 功能:用指定元素obj替代集合中指定index位置的元素
    • 功能说明:假设集合list中有元素[“java”,“javaEE”],当使用set(0,“javaWeb”)后,集合list中的元素为[“javaWeb”,“JavaEE”]。
  • Object remve(int index)

    • 功能:从集合中删除指定index处的元素,返回该元素
    • 功能说明:假设集合list中有元素[“java”,“javaEE”],当使用remove(0)后,集合list中的元素为[“JavaEE”],返回值为“java”。
  • void clear()

    • 功能:清空集合中所有元素
    • 功能说明:假设集合list中有元素[“java”,“javaEE”],当使用clear()后,集合list中的元素为空[ ]。

    作者: 杨校

    出处: https://blog.csdn.net/kese7952

    分享是快乐的,也见证了个人成长历程,文章大多都是工作经验总结以及平时学习积累,基于自身认知不足之处在所难免,也请大家指正,共同进步。

    本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 如有问题, 可邮件(397583050@qq.com)咨询。

目录
相关文章
|
2月前
|
存储 Java
深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。
【10月更文挑战第16天】本文深入探讨了Java集合框架中的HashSet和TreeSet,解析了两者在元素存储上的无序与有序特性。HashSet基于哈希表实现,添加元素时根据哈希值分布,遍历时顺序不可预测;而TreeSet利用红黑树结构,按自然顺序或自定义顺序存储元素,确保遍历时有序输出。文章还提供了示例代码,帮助读者更好地理解这两种集合类型的使用场景和内部机制。
46 3
|
1月前
|
存储 Java 开发者
Java中的集合框架深入解析
【10月更文挑战第32天】本文旨在为读者揭开Java集合框架的神秘面纱,通过深入浅出的方式介绍其内部结构与运作机制。我们将从集合框架的设计哲学出发,探讨其如何影响我们的编程实践,并配以代码示例,展示如何在真实场景中应用这些知识。无论你是Java新手还是资深开发者,这篇文章都将为你提供新的视角和实用技巧。
31 0
|
4月前
|
存储 算法 Java
Java中的集合框架深度解析云上守护:云计算与网络安全的协同进化
【8月更文挑战第29天】在Java的世界中,集合框架是数据结构的代言人。它不仅让数据存储变得优雅而高效,还为程序员提供了一套丰富的工具箱。本文将带你深入理解集合框架的设计哲学,探索其背后的原理,并分享一些实用的使用技巧。无论你是初学者还是资深开发者,这篇文章都将为你打开一扇通往高效编程的大门。
|
4月前
|
JSON Java API
在 Java 中解析 JSON ArrayList 的详细指南
【8月更文挑战第23天】
99 1
|
4月前
|
存储 算法 Java
Java中的集合框架深度解析与实践
【8月更文挑战第31天】在Java编程的海洋中,集合框架扮演着不可或缺的角色。本文将带你领略Java集合框架的魅力,从理论到实践,深入浅出地探索List、Set和Map等核心接口的使用技巧。我们将通过具体代码示例,展示如何在日常开发中高效运用这些工具,让你的代码更加优雅和高效。无论你是初学者还是有经验的开发者,这篇文章都将为你打开一扇通往Java集合世界的大门。
|
4月前
|
Python
【Python 3】Set集合的解析与使用
文章介绍了Python中Set集合的用法,包括如何创建集合、添加和删除元素,以及如何进行元素计数和成员资格检查。
30 0
|
1月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
71 2
|
2月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
76 0
|
2月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
62 0
|
2月前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
66 0

推荐镜像

更多