Класс ArrayList. Методы, определяющие информацию об элементах массива
Содержание
- 1. Метод get(). Получить элемент в заданной позиции
- 2. Метод contains().Определить, содержит ли список определенный элемент
- 3. Метод containsAll().Определить, есть ли все элементы некоторой коллекции в заданной коллекции
- 4. Методы indexOf() и lastIndexOf().Определить позицию первого и последнего вхождения элемента в массиве
- 5. Методы iterator() и listIterator(). Получить итератор на коллекцию
- Связанные темы
Поиск на других ресурсах:
1. Метод get(). Получить элемент в заданной позиции
С помощью метода get() можно получить элемент в заданной позиции. Объявление метода следующее:
public E get(int index);
здесь
- E – тип элементов массива;
- index – позиция элемента в массиве начиная с 0.
Пример.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // Метод get() - получить элемент из массива // 1. Создать коллекцию из чисел ArrayList<Integer> AL = new ArrayList(); AL.add(1); AL.add(2); AL.add(3); AL.add(4); AL.add(5); // 2. Получить элемент в индексе 2 - метод get() int item = AL.get(2); // 3. Вывести элемент System.out.println("item = " + item); // item = 3 } }
Результат выполнения программы
item = 3
⇑
2. Метод contains().Определить, содержит ли список определенный элемент
Метод contains() возвращает true, если в списке содержится хотя бы один указанный элемент. Согласно документации Java общая форма метода следующая
public boolean contains(Object obj);
здесь
- obj – элемент, наличие которого в коллекции необходимо определить.
Пример. В примере определяется наличие строки «abcd» в массиве строк.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // Метод contains() - определить наличие элемента в массиве // 1. Создать коллекцию из строк ArrayList<String> AL = new ArrayList(); AL.add("abcd"); AL.add("abc"); AL.add("jklmn"); AL.add("jprst"); // 2. Вызвать метод contains() boolean f_is = AL.contains("abcd"); // 3. Вывести результат System.out.println("f_is = " + f_is); } }
Результат выполнения программы
f_is = true
⇑
3. Метод containsAll().Определить, есть ли все элементы некоторой коллекции в заданной коллекции
С помощью метода containsAll() можно определить, встречаются ли все элементы одной коллекции в другой коллекции хотя бы один раз. Общая форма объявления метода следующая
public boolean containsAll(Collection<?> obj);
здесь
- obj – коллекция, элементы которой необходимо проверить на наличие в текущей коллекции.
Если все элементы коллекции obj встречаются хотя бы один раз в текущей коллекции, метод возвращает true. Если хотя бы одного элемента нет в коллекции, метод возвращает false.
Пример. В примере формируются две коллекции. Затем происходит проверка наличия одной коллекции в другой.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // Метод containsAll() - определить наличие элементов коллекции в массиве // 1. Создать коллекцию из чисел ArrayList<Integer> AL = new ArrayList(); AL.add(1); AL.add(2); AL.add(3); AL.add(4); AL.add(5); // 2. Создать другую коллекцию из чисел ArrayList<Integer> AL2 = new ArrayList(); AL2.add(1); AL2.add(2); AL2.add(5); // 3. Вызвать метод containsAll() boolean f_is_all = AL.containsAll(AL2); // 4. Вывести результат System.out.println("f_is_all = " + f_is_all); } }
Результат выполнения программы
f_is_all = true
⇑
4. Методы indexOf() и lastIndexOf().Определить позицию первого и последнего вхождения элемента в массиве
С помощью методов indexOf() можно определить позицию первого или последнего вхождения заданного элемента в массиве. Объявление методов выглядит следующим образом
public int indexOf(Object obj); public int lastIndexOf(Object obj);
здесь
- obj – элемент, позицию которого нужно определить.
Если элемент obj не найден в массиве, то возвращается значение -1.
Пример.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // Метод indexOf(), lastIndexOf() // 1. Создать коллекцию из 10 вещественных чисел ArrayList<Double> AL = new ArrayList(); AL.add(1.5); AL.add(1.2); AL.add(1.2); AL.add(1.7); AL.add(1.7); AL.add(1.1); AL.add(1.2); AL.add(1.8); AL.add(1.6); AL.add(1.7); System.out.println(AL); // 2. Найти позицию первого вхождения числа 1.2 int pos = AL.indexOf(1.2); // pos = 1 System.out.println("indexOf(1.2) = " + pos); // 3. Найти позицию первого вхождения числа 1.7 pos = AL.indexOf(1.7); // pos = 3 System.out.println("indexOf(1.7) = " + pos); // 4. Найти позицию последнего вхождения числа 1.2 pos = AL.lastIndexOf(1.2); System.out.println("lastIndexOf(1.2) = " + pos); // 5. Найти позицию последнего вхождения числа 2.5 pos = AL.lastIndexOf(2.5); // pos = -1 - числа нету в массиве System.out.println("lastIndexOf(2.5) = " + pos); } }
Результат выполнения программы
[1.5, 1.2, 1.2, 1.7, 1.7, 1.1, 1.2, 1.8, 1.6, 1.7] indexOf(1.2) = 1 indexOf(1.7) = 3 lastIndexOf(1.2) = 6 lastIndexOf(2.5) = -1
⇑
5. Методы iterator() и listIterator(). Получить итератор на коллекцию
Метод iterator() позволяет получить итератор на массив. Метод listIterator() возвращает итератор на массив в виде списка. С помощью итератора можно совершать обход коллекции. Общая форма формы объявления методов следующая:
public Iterator<E> iterator(); public ListIterator<E> listIterator();
здесь
- E – тип элементов массива.
Пример. В нашем примере формируется массив символов. Затем с помощью итератора и их методов hasNext() и next() происходит обход массива.
import java.util.*; public class TrainCollections { public static void main(String[] args) { // 1. Метод iterator() - получить итератор на массив // 1.1. Создать коллекцию символов ArrayList<Character> AL1 = new ArrayList<Character>(); AL1.add('a'); AL1.add('b'); AL1.add('c'); AL1.add('d'); AL1.add('e'); // 1.2. Создать итератор на коллекцию AL Iterator<Character> it1 = AL1.iterator(); // 1.3. С помощью итератора списка осуществить обход коллекции // и вывести элементы коллекции Character c; while (it1.hasNext()) { c = it1.next(); // получить элемент System.out.print(c + " "); } // 2. Метод listIterator() // 2.1. Сформировать коллекцию чисел типа Short ArrayList<Short> AL2 = new ArrayList<Short>(); for (int i=0; i<5; i++) AL2.add((short) (i)); // AL2 = [ 0, 1, 2, 3, 4 ] // 2.2. Создать итератор списка на коллекцию AL2 Iterator<Short> it2 = AL2.iterator(); // 2.3. Удалить первый элемент из коллекции (элемент 0) it2.next(); it2.remove(); // 2.4. Вывести остаток коллекции System.out.println(); while (it2.hasNext()) { System.out.print(it2.next() + " "); } } }
Результат выполнения программы
a b c d e 1 2 3 4
⇑
Связанные темы
- Класс ArrayList. Динамический массив. Общие сведения. Создание массива
- Методы изменяющие данные в массиве. Методы add(), addAll(), clear(), remove(), removeIf(), replaceAll(), set(), sort()
- Методы определяющие общие характеристики массива. Методы ensureCapacity(), isEmpty(), size(), trimToSize()
- Методы преобразующие массив в целом. Методы clone(), sublist(), toArray(), retainAll()
⇑