Danh sách Java

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về giao diện List trong Java và các phương thức của nó.

Trong Java, Listgiao diện là một tập hợp có thứ tự cho phép chúng ta lưu trữ và truy cập các phần tử một cách tuần tự. Nó mở rộng Collectiongiao diện.

Các lớp triển khai danh sách

Vì Listlà một giao diện nên chúng ta không thể tạo các đối tượng từ nó.

Để sử dụng các chức năng của Listgiao diện, chúng ta có thể sử dụng các lớp sau:

  • ArrayList
  • LinkedList
  • Vector
  • Stack

Các lớp này được định nghĩa trong khung Collections và triển khai Listgiao diện.

Làm thế nào để sử dụng Danh sách?

Trong Java, chúng ta phải nhập java.util.Listgói để sử dụng List.

// ArrayList implementation of List
List<String> list1 = new ArrayList<>();

// LinkedList implementation of List
List<String> list2 = new LinkedList<>();

Ở đây, chúng tôi đã tạo các đối tượng list1 và list2 của các lớp ArrayListvà LinkedList. Các đối tượng này có thể sử dụng các chức năng của Listgiao diện.

Phương pháp danh sách

Các Listgiao diện bao gồm tất cả các phương pháp của Collectiongiao diện. Bởi vì nó Collectionlà một giao diện siêu của List.

Một số phương pháp thường được sử dụng của Collectiongiao diện cũng có sẵn trong Listgiao diện là:

  • add() – adds an element to a list
  • addAll() – adds all elements of one list to another
  • get() – helps to randomly access elements from lists
  • iterator() – returns iterator object that can be used to sequentially access elements of lists
  • set() – changes elements of lists
  • remove() – removes an element from the list
  • removeAll() – removes all the elements from the list
  • clear() – removes all the elements from the list (more efficient than removeAll())
  • size() – returns the length of lists
  • toArray() – converts a list into an array
  • contains() – returns true if a list contains specified element

Triển khai giao diện danh sách

1. Triển khai lớp ArrayList

import java.util.List;
import java.util.ArrayList;

class Main {

    public static void main(String[] args) {
        // Creating list using the ArrayList class
        List<Integer> numbers = new ArrayList<>();

        // Add elements to the list
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("List: " + numbers);

        // Access element from the list
        int number = numbers.get(2);
        System.out.println("Accessed Element: " + number);

        // Remove element from the list
        int removedNumber = numbers.remove(1);
        System.out.println("Removed Element: " + removedNumber);
    }
}

Đầu ra

List: [1, 2, 3]
Accessed Element: 3
Removed Element: 2

Để tìm hiểu thêm về ArrayList, hãy truy cập Java ArrayList .

2. Triển khai lớp LinkedList

import java.util.List;
import java.util.LinkedList;

class Main {

    public static void main(String[] args) {
        // Creating list using the LinkedList class
        List<Integer> numbers = new LinkedList<>();

        // Add elements to the list
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("List: " + numbers);

        // Access element from the list
        int number = numbers.get(2);
        System.out.println("Accessed Element: " + number);

        // Using the indexOf() method
        int index = numbers.indexOf(2);
        System.out.println("Position of 3 is " + index);

        // Remove element from the list
        int removedNumber = numbers.remove(1);
        System.out.println("Removed Element: " + removedNumber);
    }
}

Đầu ra

List: [1, 2, 3]
Accessed Element: 3
Position of 3 is 1
Removed Element: 2

Để tìm hiểu thêm về LinkedList, hãy truy cập Java LinkedList .

Danh sách Java so với Bộ

Cả Listgiao diện và Setgiao diện đều kế thừa Collectiongiao diện. Tuy nhiên, tồn tại một số khác biệt giữa chúng.

  • Lists can include duplicate elements. However, sets cannot have duplicate elements.
  • Elements in lists are stored in some order. However, elements in sets are stored in groups like sets in mathematics.

Bây giờ chúng ta đã biết Listlà gì , chúng ta sẽ xem các triển khai của nó trong ArrayListvà LinkedListcác lớp một cách chi tiết trong các hướng dẫn tiếp theo.









Gõ tìm kiếm nhanh...