Java SE之基础篇——ArrayList类详解

Posted 一计之长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java SE之基础篇——ArrayList类详解相关的知识,希望对你有一定的参考价值。


前言

  上篇文章给大家介绍了API的使用教程,主要给大家介绍了Java中的API手册是如何使用,并且又介绍了Java中常用的String类和StringBuilder类的相关用法以及对比了二者的区别,最后通过XMind的思维导图,为大家总结了整篇文章介绍的相关知识点,帮助大家更好的梳理文中相关知识点的重点,同时也为大家更好的将java知识点形成一棵知识图谱。全文用了大量的案例帮助大家更好的理解相应知识点的使用。本文给大家介绍的是Java中比较经常用到的一个类——ArrayList。并且文章最后会通过一个综合的案例——学生管理系统来将ArrayList的用法全面的应用于其中。我们首先介绍的就是ArrayList类的相关概念。

一、ArrayList类

1、ArrayList类概述

  在Java中,我们经常会把一些数据存在一个容器中,我们将这些能够存储各种各样的数据的容器称之为集合。如果从Java专业的角度来将,集合就是提供一种存储空间可变的存储模型,存储的数据容量可以发生改变。其特点就是底层是数组实现的,长度可以变化。并且如果我们经常用容器的话,会经常会使用到一种泛型——用于约束集合中存储元素的数据类型。

2、ArrayList类常用方法

  ArrayList常有如下的构造方法:

Java

  我们通过一个简单案例说明该构造方法的使用过程:

import java.util.ArrayList;

public class ArrayListDemo01
public static void main(String[] args)
//public ArrayList():创建一个空的集合对象
// ArrayList<String> array = new ArrayList<>();

ArrayList<String> array = new ArrayList<String>();

//public boolean add(E e):将指定的元素追加到此集合的末尾
// System.out.println(array.add("hello"));

array.add("你好");
array.add("一计之长");
array.add("认真写博客");

//public void add(int index,E element):在此集合中的指定位置插入指定的元素
array.add(1,"博主");
// array.add(3,"javaee");

//IndexOutOfBoundsException
// array.add(4,"javaee");

//输出集合
System.out.println("array:" + array);


  该案例的执行结果如下:

Java

  其中主要的成员方法主要用到以下的几个:

Java

  我们通过一个简单的小案例来说明ArrayList的相关用法。具体实现如下:

import java.util.ArrayList;

public class ArrayListDemo02
public static void main(String[] args)
//创建集合
ArrayList<String> array = new ArrayList<String>();

//添加元素
array.add("你好");
array.add("博主");
array.add("一计之长");

//public boolean remove(Object o):删除指定的元素,返回删除是否成功
// System.out.println(array.remove("world"));
// System.out.println(array.remove("javaee"));

//public E remove(int index):删除指定索引处的元素,返回被删除的元素
// System.out.println(array.remove(1));

//IndexOutOfBoundsException
// System.out.println(array.remove(3));

//public E set(int index,E element):修改指定索引处的元素,返回被修改的元素
// System.out.println(array.set(1,"javaee"));

//IndexOutOfBoundsException
// System.out.println(array.set(3,"javaee"));

//public E get(int index):返回指定索引处的元素
// System.out.println(array.get(0));
// System.out.println(array.get(1));
// System.out.println(array.get(2));
//System.out.println(array.get(3)); //?????? 自己测试

//public int size():返回集合中的元素的个数
System.out.println(array.size());

//输出集合
System.out.println("array:" + array);

  具体执行结果如下:

Java

3、ArrayList存储字符串并遍历

  该案例的具体需求为:创建一个存储字符串的集合,存储3个字符串元素,使用程序实现在控制台遍历该集合。

  我们根据该需求,给出相应的解题思路;具体思路如下:


  1:定义学生类
  2:创建集合对象
  3:创建学生对象
  4:添加学生对象到集合中
  5:遍历集合,采用通用遍历格式实现


  我们根据该思路,将其转化为相应的代码,具体实现如下:

import java.util.ArrayList;

public class ArrayListTest01
public static void main(String[] args)
//创建集合对象
ArrayList<String> array = new ArrayList<String>();

//往集合中添加字符串对象
array.add("一计之长");
array.add("Stefan");
array.add("Oliver");

//遍历集合的通用格式
for(int i=0; i<array.size(); i++)
String s = array.get(i);
System.out.println(s);


  我们根据其思路转化的代码具体的执行结果如下:

Java

  我们对其进行稍微的改造以下,具体的需求如下:


  创建一个存储学生对象的集合,存储3个学生对象,使用程序实现在控制台遍历该集合。


  我们根据其需求,给出相应的实现思路:


  1:定义学生类
  2:创建集合对象
  3:创建学生对象
  4:添加学生对象到集合中
  5:遍历集合,采用通用遍历格式实现


  我们根据其思路实现如下的代码:

public class Student 
private String name;
private int age;

public Student()

public Student(String name,int age)
this.name = name;
this.age = age;


public void setName(String name)
this.name = name;


public String getName()
return name;


public void setAge(int age)
this.age = age;


public int getAge()
return age;



import java.util.ArrayList;

public class ArrayListTest02
public static void main(String[] args)
//创建集合对象
ArrayList<Student> array = new ArrayList<Student>();

//创建学生对象
Student s1 = new Student("一计之长", 26);
Student s2 = new Student("stefan", 33);
Student s3 = new Student("Napoleon", 18);

//添加学生对象到集合中
array.add(s1);
array.add(s2);
array.add(s3);

//遍历集合,采用通用遍历格式实现
for (int i = 0; i < array.size(); i++)
Student s = array.get(i);
System.out.JAVA SE基础篇36.时间处理相关类

《C#零基础入门之百识百例》(八十三)系统类ArrayList数组列表详解 -- 代码示例

Java SE之基础篇——方法

JAVA SE基础篇34.包装类

JAVA SE基础篇32.String类

JAVA容器之ArrayList集合详解