410013796724260
• Webmoney
R335386147728
Z369087728698
Списочный массив ArrayListВ Java массивы имеют фиксированную длину и не могут быть увеличены или уменьшены. Класс ArrayList реализует интерфейс List и может менять свой размер во время исполнения программы, при этом не обязательно указывать размерность при создании объекта. Элементы ArrayList могут быть абсолютно любых типов в том числе и null. Пример создания объекта ArrayList ArrayList <String> list = new ArrayList <String>(); Можно инициализировать массив на этапе определения. Созданный объект list содержит свойство size. Обращение к элементам массива осуществляется с помощью метода get(). Пример :
ArrayList <String> list;
list = Arrays.asList(new String[] {"a", "b", "c"});
System.out.println ("Размер массива равен '" +
Integer.valueOf (list.size()) + "' элементам");
Добавление элемента в массив ArrayList, метод addРаботать с ArrayList просто: необходимо создать объект и вставлять созданные объекты методом add(). Обращение к элементам массива осуществляется с помощью метода get(). Пример:
ArrayList <String> list;
list = new ArrayList <String();
list.add("Школа");
System.out.println ("Первый элемент массива '"
+ list.get(0) + "'");
System.out.println ("Размер массива '"
+ Integer.valueOf (list.size()) + "'");
Замена элемента массива ArrayList, метод setЧтобы заменить элемент в массиве, нужно использовать метод set() с указанием индекса и новым значением.
list.add("Яблоко");
list.add("Груша");
list.add("Слива");
list.set(1, "Персик");
System.out.println (
"2-ой элемент массива '" + list.get(1) + "'");
Удаление элемента массива ArrayList, метод removeДля удаления элемента из массива используется метод remove(). Можно удалять по индексу или по объекту:
list.remove(0); // удаляем по индексу
list.remove("Слива"); // удаляем по объекту
ПРИМЕЧАНИЕ: элементы, следующие после удалённого элемента, перемещаются на одну позицию ближе к началу. То же самое относится и к операции вставки элемента в середину списка. Для очистки всего массива используется метод clear(): list.clear(); Определение позиции элемента ArrayList, метод indexOfВ списочном массиве ArrayList существует метод indexOf(), который ищет нужный элемент и возвращает его индекс.
int index = list.indexOf("Слива");
// выводим имя элемента и его номер в массиве
System.out.println (list.get(index) +
" числится под номером " + index);
Отсчёт в массиве начинается с 0, если индекс равен 2, значит он является третьим в массиве. Проверка наличие элемента в ArrayList, метод containsЧтобы узнать, есть в массиве какой-либо элемент, можно воспользоваться методом contains(), который вернёт логическое значение true или false в зависимости от присутствия элемента в наборе :
System.out.println (list.contains("Картошка") + "");
Понятно, что в массиве никаких овощей быть не может, поэтому в консоле будет отображено false. Создание массива из элементов ArrayList, метод toArrayДля конвертирования набора элементов в обычный массив необходимо использовать метод toArray().
ArrayList<String> myArrayList = new ArrayList<String>();
myArrayList.add("Россия");
myArrayList.add("Польша");
myArrayList.add("Греция");
myArrayList.add("Чехия");
String[] array = {}; // конвертируем ArrayList в массив
array = myArrayList.toArray(new String[myArrayList.size()]);
Интерфейс Listjava.util.List является интерфейсом и его следует использовать вместо ArrayList следующим образом : List<String> list = new ArrayList<String>(); Или укороченный вариант для Java 7: List<String> list = new ArrayList<>(); В примере тип ArrayList заменен на List, но в объявлении оставлен new ArrayList(). Всё остальное остаётся без изменений. Это является рекомендуемым способом. Интерфейс List реализует более общий интерфейс коллекции Collection. Преобразование массива в список, ArraysДля создания массива можно не только добавлять по одному объекту через метод add(), но и сразу массив с использованием Arrays.asList(...). Пример создания и инициализации массива из объектов Integer. List<Integer> numlist = Arrays.asList(1, 2, 5, 9, 11); System.out.println (numlist.get(2) + ""); // выводит число 5 У данного способа есть недостаток. Если вы определили списочный массив таким образом, то уже не можете вставлять или удалять элемент, хотя при этом можете изменять существующий элемент. List<Integer> numlist = Arrays.asList(1, 2, 5, 9, 11); numlist.set(2, 33); // так можно numlist.add(34); // нельзя, ошибка во время исполнения System.out.println (numlist.get(2) + ""); |
