在 Java 中的 Arraylist 中添加对象

Rupam Yadav 2023年10月12日
  1. 在 ArrayList 中添加相同类型的对象
  2. 在 ArrayList 中添加不同类型的对象
在 Java 中的 Arraylist 中添加对象

在 Java 中,ArrayList 是一个可调整大小的数组,也可以定义为元素的有序序列。与简单数组不同,Java ArrayList 更加灵活,可以容纳多种数据类型。本文将演示如何使用此功能。

在 ArrayList 中添加相同类型的对象

在这里,我们将用户定义的或自定义的类对象添加到 ArrayList。在 ArrayList 中,我们可以使用整数索引访问元素。我们将指定或声明我们将存储在 <>(尖括号)内的 ArrayList 中的对象类型。

在下面的代码中,我们有一个带有构造函数的 Book 类对象和三个数据类型分别为 bookNameauthorrating 的实例变量。我们使用 new 关键字和带有参数的构造函数调用创建了一个 Book 类对象;这将传递的值分配给实例变量。

add() 方法将对象插入到 arrayofBooks。因此,我们向我们的 arrayOfBooks 添加了 4 个 Book 类对象。然后我们运行 foreach 循环来迭代并显示所有 Book 数据。

我们可以使用 . 访问 Book 类的属性点运算符。下面我们通过调用 book.bookName 函数访问了 bookName 属性。

import java.util.ArrayList;
public class ArrayObject {
  public static void main(String args[]) {
    ArrayList<Book> arrayOfBooks = new ArrayList<>();
    arrayOfBooks.add(new Book("To Kill a Mockingbird", "Harper Lee", 3));
    arrayOfBooks.add(new Book("1984", "George Orwell", 4));
    arrayOfBooks.add(new Book("Harry Potter and the Philosopher's Stone", "J.K. Rowling", 4));
    arrayOfBooks.add(new Book("The Lord of the Rings", "J.R.R. Tolkien", 4.5));

    for (Book book : arrayOfBooks) {
      System.out.println(
          "BookTitle: " + book.bookName + ", by" + book.author + "with a rating of " + book.rating);
    }
  }
}
class Book {
  String bookName;
  String author;
  double rating;
  Book(String bookName, String author, double rating) {
    this.bookName = bookName;
    this.author = author;
    this.rating = rating;
  }
}

输出:

BookTitle: To Kill a Mockingbird, byHarper Leewith a rating of 3.0
BookTitle: 1984, byGeorge Orwellwith a rating of 4.0
BookTitle: Harry Potter and the Philosopher's Stone, byJ.K. Rowlingwith a rating of 4.0
BookTitle: The Lord of the Rings, byJ.R.R. Tolkienwith a rating of 4.5

在 ArrayList 中添加不同类型的对象

如前所述,函数 ArrayList 也可以保存多种类型的对象。这里,arrayOfDifferentObject 是一个 ArrayList,可以容纳不同类型的对象。我们使用 <Object> 类在下面代码中给出的语法中声明了我们的 ArrayList

在 Java 中,ArrayList 可以保存包装类的对象,如 double、integer 和 string。

然后我们使用 add() 方法将元素添加到 ArrayList。首先,我们向 ArrayList 添加一个字符串值,然后分别添加一个双精度值、整数和浮点数。我们还可以使用 set() 方法在我们选择的索引处用新值替换元素。

我们用字符串值替换了 arrayOfDifferentObject.set(1,"David Wells") 和索引 1 处的双精度值。之后,我们可以看到输出被修改了。

import java.util.ArrayList;
public class ArrayObject {
  public static void main(String args[]) {
    ArrayList<Object> arrayOfDifferentObject = new ArrayList<Object>();

    arrayOfDifferentObject.add("John Doe");
    arrayOfDifferentObject.add(10.00D);
    arrayOfDifferentObject.add(10);
    arrayOfDifferentObject.add(10.11F);

    System.out.println("ArrayList after all insertion:-");
    for (int i = 0; i < arrayOfDifferentObject.size(); i++) {
      System.out.println(arrayOfDifferentObject.get(i));
    }

    arrayOfDifferentObject.set(1, "David Wells");
    System.out.println("ArrayList after modification:-");

    for (int i = 0; i < arrayOfDifferentObject.size(); i++) {
      System.out.println(arrayOfDifferentObject.get(i));
    }
  }
}

输出:

ArrayList after all insertion:-
John Doe
10.0
10
10.11
ArrayList after modification:-
John Doe
David Wells
10
10.11
作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn