import java.util.ArrayList;
public class Test {
    public static void main(String[] args) {
        ArrayList<Integer> array = new ArrayList<Integer>(2);
        array.add(5);
        array.add(6);
        array.add(1, 7);
        System.out.print(array.indexOf(6));

        array.remove(1);
        System.out.println(array.indexOf(6));
    }
}
Какой результат выполнения этой программы ?
Explanation
Объяснение:
ArrayList array = new ArrayList(2);
в данном случае двойка означает размер конейнера, т.е. всего зарезервировано место под два элемента. В действительности, размер контейнера равен нулю, т.к. в нём пока нет элементов. Это к справке.

Далее:
array.add(5);
array.add(6);
как мы знаем, ArrayList это списочный последовательный контейнер и элементы в нём хранятся в порядке добавления.
Т.е.
нулевой элемент - пятёрка
первый элемент - шестерка.

такая форма добавления:
array.add(1, 7);
означает, цифру семь нужно вставить в первый элемент, т.к. этот контейнер последовательный и порядок добавления в него слева направо, то при добавлении элемента, цифра шесть сместиться вправо и станет вторым элементом в контейнере
0 1 2 - элементы в контейнере.
5 7 6 - числа

Далее, array.indexOf(6)
печатаем индекс числа шесть, он равен двойке.
Затем, array.remove(1);
удаляется первый элемент, т.е. семёрка и, шестёрка становится на своё

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback
Keep exploring
Java quizzes
Cosmo
Sign Up Now
or Subscribe for future quizzes