Метод subList() класса ArrayList в Java

Java ArrayList Java ArrayList

Метод subList() используется для извлечения и возврата части динамического массива.

Синтаксис метода subList():

arraylist.subList(int fromIndex, int toIndex)

Примечание:arraylist — это объект класса ArrayList.

Детали параметров:

  • fromIndex - начальная позиция извлекаемых элементов, включая элемент по этому индексу.
  • toIndex - конечная позиция извлекаемых элементов, не включая элемент по этому индексу.

Возвращаемое значение

Возвращает извлечённую часть заданного динамического массива.

Если fromIndex меньше 0 или больше длины массива, выбрасывается исключение IndexOutOfBoundsException.

Если fromIndex больше значения toIndex, выбрасывается исключение IllegalArgumentException.

Примечание: элементы, содержащиеся в этом динамическом массиве, начинаются с позиции fromIndex и идут до позиции индекса элемента toIndex-1, при этом элемент с индексом toIndex не включается.

Пример

Извлечение подсписка из динамического массива:

Пример

import java.util.ArrayList;

class Main {
    public static void main(String[] args){

        // Создать динамический массив
        ArrayList<String> sites = new ArrayList<>();

        sites.add("Google");
        sites.add("Example");
        sites.add("Taobao");
        sites.add("Wiki");
        System.out.println("Список сайтов: " + sites);

        // Позиции элементов с 1 по 3
        System.out.println("SubList: " + sites.subList(1, 3));
    }
}

Вывод вышеприведённой программы:

网站列表: [Google, Example, Taobao, Wiki]
SubList: [Example, Taobao]

В приведённом выше примере мы используем метод subList() для получения элементов с 1 по 3 (3).

Разделение динамического массива на два динамических массива:

Пример

import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // Создать массив
        ArrayList<Integer> ages = new ArrayList<>();

        // Добавить несколько элементов в массив
        ages.add(10);
        ages.add(12);
        ages.add(15);
        ages.add(19);
        ages.add(23);
        ages.add(34);
        System.out.println("Список возрастов: " + ages);

        // Младше 18
        System.out.println("Младше 18: " + ages.subList(0, 3));

        // 18 и старше
        System.out.println("18 и старше: " + ages.subList(3, ages.size()));
    }
}

Вывод вышеприведённой программы:

年龄列表: [10, 12, 15, 19, 23, 34]
18 岁以下: [10, 12, 15]
18 岁以上: [19, 23, 34]

В приведённом выше примере мы создали массив с именем ages, а метод subList() разбивает массив на два массива: для тех, кто младше 18, и для тех, кому 18 и больше.

Обратите внимание, что мы использовали метод ages.size(), чтобы получить длину массива. Чтобы узнать больше о методе size(), посетите страницу Java ArrayList size().

Java ArrayList Java ArrayList

Другие расширения