Рубрики
Без рубрики

Структура данных ArrayList| Реализовать список массивов на Java

пакет com.ds.algorithms.arraylist; /** @Автор панкай @создать 4/10/21 6:37 вечера Зачем использовать массив Li… С тегами java, программирование, качество кода, javascript.

пакет com.ds.алгоритмы.список массивов;

/**

  • @Автор панкай
  • @@create 4/10/21 6:37 вечера Зачем использовать ArrayList: это массив с изменяемым размером, также называемый динамическим массивом (Растущий массив/массив с изменяемым размером). Он увеличивает свой размер для размещения новых элементов и уменьшает размер при удалении элементов. —>ArrayList внутренне использует массив для хранения элементов. Как и массивы, он позволяет извлекать элементы по их индексу ArrayList – это класс реализации для интерфейса списка. Дополнение к списку:
  • допускаются дубликаты.
  • Порядок вставки сохраняется. то, как вы собираетесь вставлять элементы, будет отображаться так же, как и ваш элемент
  • емкость ArrayList по умолчанию составляет 10
  • Формула для роста*3/2+1 до java 1.6
  • Как только будет создан новый список массивов, более старый список массивов будет иметь право на сборку
  • вставка нуля возможна во ВСЕХ
  • допускаются однородные элементы ПРИМЕЧАНИЕ: НАЗНАЧЕНИЕ ArrayList – Динамический массив/Массив с возможностью увеличения/массив с возможностью изменения размера ————- Когда использовать ArrayList ———————-
  • ArrayList – плохой выбор для вставки/удаления элемента в середине AL, потому что для смещения элемента Noe потребуется больше времени: Если у вас частая операция вставки/удаления в середине списка, лучше всего использовать LL вместо AL 2.. Если ваша частая операция – операция извлечения, то ArrayList – лучший выбор.
  • Класс ArrayList и Vector реализует интерфейс RandomAccess, помогает извлекать элемент за постоянное время O(1) независимо от примечания индекса: Случайный интерфейс – это интерфейс маркера (у вас нет никакого метода)

*/

открытый код списка массивов классов {

private static final int INITIAL_CAPACITY=10;
private Object [] objectArray;
private int index;
private int size;
ArrayListCode()
{
    this.objectArray=new Object[INITIAL_CAPACITY];
    this.size=INITIAL_CAPACITY;
}

public void add(Object o)
{
    System.out.println("index: "+this.index+" size: "+this.size+" Array size: "+this.objectArray.length);
        //check whether array is full
    if(this.index== this.size-1)
    {
        // Object array is full, in this case we need to increase Object Array
        increaseObjectArray();
    }
    // array is not full
    objectArray[index]=o;
    this.index++;
}

private void увеличивает массив объектов() {.size+INITIAL_CAPACITY;//создайте новый массив объектов и скопируйте из старого массива Объект[] Объект[этот.размер]; для (int;i [i]; }; System.out.println(“#######индекс ######: “+этот.индекс+”размер: “+этот.размер+”размер массива: “+этот.objectArray.длина);}

//код для получения() общедоступного объекта get(int i) вызывает исключение {//индекс данных отсутствует в массиве, если(i >this.index-1) {создать новое исключение (“Исключение ArrayIndexOutOfBoundsException”); }//-индекс ve передается иначе, если(i<0) {создать новое исключение (“отрицательное значение!!!”); } вернуть this.objectArray[i]; }//метод удаления или удаления элемента public void remove(int i) вызывает исключение {если(i >this.index-1) {создать новое исключение (“Исключение ArrayIndexOutOfBoundsException!!!”); } иначе, если (i<0) {создать новое исключение (“Отрицательный индекс!!!”); }//код для удаления объекта из массива System.out.println (“Объект удален”+this.objectArray[i]); для (int;j }//уменьшить индекс на единицу после удаления объекта this.index–; }//уменьшить индекс на единицу после удаления объекта this.index–;

}

public static void main(String[] args) throws Exception {
    ArrayListCode myArrayList=new ArrayListCode();
    myArrayList.add(0);
    myArrayList.add(1);
    myArrayList.add("pankaj");
    myArrayList.add("Ravi Kumar");
    myArrayList.add(2);
    myArrayList.add(3);
    myArrayList.add(4);
    myArrayList.add(5);
    myArrayList.add(6);
    myArrayList.add(7);
    myArrayList.add(8);
    myArrayList.add(9);
    myArrayList.add(10);
    System.out.println("Print address ::::::::: "+myArrayList);
    System.out.println("index 9th element "+myArrayList.get(9));
    //myArrayList.remove(10);
    System.out.println("index 11th element "+myArrayList.get(11));
    System.out.println("index 12th element "+myArrayList.get(12));
    myArrayList.remove(2);
    System.out.println(myArrayList.get(2));
    /* We can handle Error by using  try catch or,. directly throw Exception from main method
    try {
        System.out.println(myArrayList.get(9));
    }catch (Exception e){ }*/
}

}

Оригинал: “https://dev.to/pankajkrravi/arraylist-data-structure-implement-arraylist-in-java-3foj”